Rust相比Go的优劣势

Rust相比Go的优势:

Rust可以做内联汇编,Go不行(Rust的SIMD库也在开发中,这种事情你不会用Go做)。

Rust有确定性析构,Go没有,只能whole-world-stop做GC。

Rust的     接口   (tr     ai   t)可以静态派发,做zero-costabstrac     ti   on,Go不行,它的in     te       rf   ace只能靠反射做动态派发。

Rust没有运行时,可以写操作系统(我估计至少需要几百行汇编做bootstrap),Go离这种能力很远。

Rust有一个更丰富的类型系统,表达能力更强,允许你做更高层次的抽象,写出泛用的库,这个是Go不具备的。

Rust有更强的语义,更容易捕获错误的逻辑,编译器直接检查出你代码中的不安全的部分。

Rust的适用领域比Go更广。

Rust社区更愿意改变,Go社区喜欢坚持他们不需要泛型。

Rust有一个活跃的开发社区,如果你发觉有东西需要做出改变,不管是文档、编程思想、语言设计、bugfix等等,社区欢迎你提出来一起讨论,并且没有问题的建议经常能被快速接受,不管你以后工作中会不会频繁用到Rust,与Rust一起成长总会是一段有趣的体验;相比之下Go算是大公司病,人们不那么对提出改进的建议做出积极响应。我自己也曾经为Go感到兴奋,在那半年中我却没有读过Go的源码;然而在Rust这活跃的社区的促进下我也读过一些源码了,如果你对代码的组织方式等源码相关的问题有疑惑欢迎与我讨论。

Rust相比Go的劣势:

Go相比Rust比较简单,相对容易学习。

Rust的语言设计看上去不如Go稳定,我是从0.10才开始用Rust,感受不深,不过我理解更早的用户可以感受到语言设计的巨大变化。我自己也经历过各种breakingchange,比如enum成为命名空间时,数组下标从uint改为usize时。对1.0之后语言的稳定性我们只能拭目以待。

Rust是后来者,文档不那么完整、思维需要做出一些转换(因为它比Go的内容更加丰富)。

Go语言

谷歌公司打造的“直观、简洁、干净、高效”语言,目前已经得到诸多主流技术厂商的广泛支持。

与Sw     if   t类似,Go同样可编译为平台原生二进制代码,因此在某些任务中拥有优于     Python   的运行速度,而且无需设定目标即可完成跨平台开发。Go语言的编译速度也非常出色,从开发速度角度看,其更像是一种解释型语言而非采用编译机制。

虽然Go的历史比Swift稍长一些,但其群体基础仍然无法同Python相比。另外,Go的语法与错误处理方案对当前Python用户来说可能不太友好。因此,其并不适合已经掌握了Python的程序员朋友。而Pyinstaller等工具的出现则让Python应用的绑定工作变得非常便捷,更不用提在大多数     Linux   系统中,Python运行时已经被设为预置项目了。

Rust语言:

这是一个同时包含语言与开发环境的统计计算项目。

R相较于Python拥有多项优势,例如丰富的第三方软件生态系统。另外,R在设计中考虑到了统计计算需求。虽然Python也很重视数学及统计处理,但R可谓在开发当中自上而下将二者进行了贯穿。

R还吸引到了众多大牌厂商的支持。微软就进行了一系列收购旨在利用R构建自己的云数据服务。惠普方面则开发了DistributedR,能够一次性运行在多个节点之上。随着各相关技术成果的不断演进,R完全有可能在统计计算领域将Python拉下马。

不过有时候通用型语言的优势还是值得强调。R虽然针对性更强,但也更具局限性——我们很难在R应用中实现交互性。另外,Python还能够更好地与其它语言对接,使用RPy2等软件包即可同时享受Python与R带来的便利。

Rust相比Go的优劣势_设计制作_EDA/IC设计
87
17
0
22

相关资讯

  1. 1、解锁新姿势《魔域口袋版》亮点福利大放送1411
  2. 2、《妖精的尾巴-最强公会》魔导士投票送福利3154
  3. 3、绝世武神双端开服这是一款你从未玩过的卡牌游戏4155
  4. 4、全新的挑战《问道》手游十绝阵任务上线1714
  5. 5、《弹弹堂手游》揭秘FreeStyle竞技玩法体验热血与激情3170
  6. 6、战友集结令《世界3》网络版主城战玩法预告4746
  7. 7、《屠龙决战沙城》新版本什么时候出听说就这几天了1227
  8. 8、贪玩2018战略产品《龙腾传世》手游首发将启4675
  9. 9、《石器大作战》儿童节福利来袭部落之王邀你来战444
  10. 10、《贪玩蓝月:传奇来了》含金量极高的装备锻造4041
全部评论(0)
我也有话说
0
收藏
点赞
顶部