- 主题:Goodbye, Rust. I wish you success but I'm back to C++[zz]
这些我觉得很容易过滤掉吧,选crate还是有基本的要求的,
这些一看就是新手试水写的,我直接就排除掉了。
我用的crate里都是很多版本号0.x(x<5)的这种crate,质量都是相当不错。他们只有一个问题,就是api不稳定,可能几个小版本后会有比较大的变化,也可能几个月后另起炉灶重新搞了。
但我可以感受到这代码背后的作者是在用最大努力去做好事情的诚意。
很多时候,尤其对于快速迭代中的代码,我不要求有多么详细具体的文档,也不要求完全不能用unsafe,panic。我不会用大型软件工程的标准去要求这些,我的标准更多的是看但是否具备好的平衡感,不是在某些方面做得有多极致。比如我就特别讨厌很多java代码的风格,过度抽象,过度测试,把简单的事情复杂化,这些行为也会被我归为低水平的。
rust的好处我觉得有两点,一点是它设计成尽量让不同人的写出一样的代码,逼着大家往最佳工程实践上走;第二点是你可以按你的想法搞,但如果你必须考虑完善,但凡没搞好就会写出很丑的代码。并且这种丑是很直观的,一个没学过rust的人都能一眼看出代码有多丑。
所谓的rust里面没有低水平的代码,不是指不存在这样的代码,而是指在rust的世界里这种代码无法生存下去。因为很容易被看出来,也很难被使用,很难继续演进。其它语言里一个早期的低水平实现因为机缘巧合用的人多了改不掉了,缝缝补补用个十几年这种现象很常见,但在rust里面我现在还没有看到类似的现象。
【 在 milksea 的大作中提到: 】
: 很不幸还是能见到低水平的rust代码…
: 有些小领域发布出来的crate,基本没维护没文档,不按规定错误处理,随意panic,无意义地到处打tracelog,随便把unsafe包成safe,缺少合理抽象等等。就是非专业c/c++背景的人临时转用rust做的,把原本质量就不好的c++代码翻译一下那种。
: 语言机制能帮助人,但拦不住人作…
--
修改:lvsoft FROM 39.144.44.*
FROM 101.229.189.*
我其实还是推荐你试试,他就用rust用的很开心,因为这就是他一直以来最喜欢的思维模式。
做之前想清楚,做之后轻易不撤回。
我其实不太喜欢这种模式,我更喜欢边做边试,快速失败快速迭代。但rust其实不是很适合我这种做事方式的。所以我目前用rust更多的是喜欢它的生态。
至于思维负担,我现在用了ai之后一切就简单啦。一切都让ai干,我只当键盘侠,到处批评ai哪哪做的不好,毫无思想负担~~
【 在 DoorWay 的大作中提到: 】
: 栩栩如生,你同事简直就是我了。我经常遇到这样的问题,非常严谨,逐步按文档操作,每步甚至还记录。但往往功亏一篑卡在某个细节上。
: 当时都会怀疑人生。解决了又会骂娘。思维负担日趋沉重。脑子里常想诸葛亮:亮一生不肯弄险,凡事谨慎,非有全策绝不出兵,无奈六出岐山均无进展……
: 要是rust有这功效,我很想试一试。生态。从包管理、build系统、内存安全、crash包告。
: ...................
--
修改:lvsoft FROM 117.135.82.*
FROM 117.135.82.*
其实现在有了ai,也没这么麻烦了。
比如有段协议非常小众,我在网上只找到一段msp430上的代码片段。
我就丢给ai,让它按照我现在的mcu用rust重写就结了....
其实我这一波最大的发现就是ai辅助下rust的门槛其实挺低的。然后rust的生态又很不错,用起来就很顺手。
只要注意一些坑就行了,比如rust抛弃了OOP的范式,但我一开始没有理解到这一点,还在用OOP的方式思考问题,就算是有ai辅助这代码也写的很艰难很痛苦...
【 在 milksea 的大作中提到: 】
: 有些东西,做的人本来就少,那就要么从头自己搞,要么捏着鼻子用一个不太行的实现,然后可能发现问题,遇到问题自己改代码什么的
--
FROM 117.135.82.*
直接上linux + rust
【 在 DreamDreams 的大作中提到: 】
: 你准备 让他们直接学rust?还是先学个c 再 学rust?
:
--
FROM 117.135.82.*
rust如果是来写infrastructure,那门槛不会低。
但能写infrastructure的人本来就不可能是初学者。
反过来也一样,只是在一个封好的框架里写写workload应该能很快上手,尤其是现在还有ai。
【 在 beep 的大作中提到: 】
: 我听我们写rust的团队说,如果不写异步tokio,不写多线程,其实rust门槛也不搞
--
FROM 117.135.82.*