最近连续在 Quora
看到几个关于 Go 和 Rust 的问题,讨论的都是为什么看起来 Rust 的设计、性能等许多方面都优于 Go,但为什么就是没有 Go 流行呢?
以下是一些回答:
-
首先 Go 是背靠 Google,受到了大量的资金、人员的支持。 -
两者的领域不同, Go 更擅长网络和通用的开发,而 Rust 更擅长系统开发。 -
Rust 的主要竞争对手是 C 语言这样有深厚底蕴的编程语言。
-
Go 很简单,开发者想要写点东西只需要花很少的时间来学习,而相反的 Rust 的学习线路更佳陡峭。 -
Rust 的语言设计很好,但是编译器有时候非常苛刻(不过也正是因为这一点,Rust 写的代码更加安全高效)。 -
Go 有许多好用的标准库,而 Rust 的标准库较少(说到标准库那还是 Go、Python、C# 这类语言的标准库更加强大)
-
因为 Rust 现在并不是“更好”语言的唯一选择,有以下一些原因不选择一门语言。 -
团队对一门语言的掌握程度 -
还有迁移成本、现有的代码库、工具链等。
-
Rust 语言更接近 C++ 而不是为应用设计的语言 -
应用程序开发的广度肯定比系统语言的用户更多。 -
速度和资源占用并不是主要的问题,开发者的时间成本比服务器成本更高。 -
其实 Go 的资源占用已经很好了,相对于 Java 来说。
总的来说 Rust 和 Go 本质上都不是解决同一类型的语言。
Rust 的更加偏向于系统编程,而 Go 可以拿来做应用开发,更多的是做云原生开发。
Go 的学习曲线也比 Rust 低很多,同时背靠 Google 也带来了许多杀手级的应用(kubernetes、Docker 等)
参考链接:
-
https://www.quora.com/Go-programming-language-Rust-is-way-better-than-Go-in-many-aspects-but-why-is-it-not-getting-popular-as-Go -
https://www.quora.com/Why-is-Rust-not-more-popular-than-Go
原文始发于微信公众号(crossoverJie):Rust 在许多方面都优于 Go,但为什么没有 Go 流行?
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论