是否应该在公司内推广Rust?Reddit上引发热讨

一家小公司CTO在Reddit上发帖询问:我应该使用Rust,还是Go?表示这两种语言更倾向于Rust,因为喜欢;而考虑GO,因为更容易找到开发人员。

对此,Reddit上有一些回答:

网友A:我们雇用了应届生,让他们学习Rust。他们没有遇到任何问题就学会了,并且正在编写干净的、性能良好的代码,单元测试覆盖率达到100%。然而,Rust的库生态系统并不像Node或Go那样完善。但是也正在努力发展。

网友B:我在教同事写Rust代码时,即使写的时间相对有限,也相当有高的效率。学习曲线可能会很陡峭,但如果有人可以教授和指导,我认为这不会是一个大问题。我们写TypeScript的程序员非常喜欢Rust,并希望能用它做更多的事情。

网友C:Rust有更多的安全机制,更好的内存处理,更好的错误处理,更少的语法噪音,更友好的社区,更低的资源使用,所有这些都是好东西。然而,如果你是个新手,而且你还不是一个可靠的开发者,你将需要所有你能得到的(优秀的)文档和帮助,这仍然需要花费一些时间。

rust·reddit·golang
225 views
Comments
登录后评论
Sign In
·

普通应用层项目 版本答案是 java c# php nodejs

GC 成为瓶颈的时候再用 Rust C++ 重构 或者 编译为 DLL

golang 不上不下. 唯一的优势是 静态编译,

用户不需要安装 runtime

( 但软件的尺寸会变大,

c# 几百 KB 就可以写一个带原生界面的小工具,

可以在 xp 及以上, 瞬间启动, ( win系统自带 .net framework) ),

c# java nodejs python 等等 可以一键打包 runtime 到 程序中,

c# 还支持 runtime 裁剪, 类似 前端的 tree shaking,

也算是解决了 安装 runtime 的问题

go 各种内部实现 和 GC 都没有 Java C# 的好.

go 协程只需一个关键字.

其他语言需要 async await 两个关键字.

而其他方面 async 无栈协程更优 ( 性能, 内存 等等),

·

rust 语言设计的非常好,但是对于大多数人来说开发体验实在差,这也是底层语言的通病,不只是 rust(c/cpp/verilog 这些语言也是一样),导致无法像菜刀一样被广泛使用,只能成为少数人的瑞士军刀。

如果开发体验能提升,或者能在某个应用层领域占领市场,肯定会吸收更多的人完善生态。