1 0
Read Time:54 Second

前文:

   谈到 Rust; 就有个很有趣的冷笑话⋯
Rust ?! 就是 Haskell + C 的Debugger ?!
 
这当然只是个笑话;不是 Rust⋯
 

本文: C/C++, Java, Golang vs Rust

   事实上, Rust 在内存上管理的作法;Ownership, Borrowing; 并不是个什么创新的作法;Java, Golang 也都是使用类似的内存管理的方法的。
 
只是 Rust 与 Java、Golang 比较起来;Rust 是将内存管理的这件事情,在 “编译” 的时候做,而 Java, Golang 是在 “执行” 的时候做。
 
所以,Rust 在执行的时候,就不需要再执行内存管理(Garbage Collection);Rust 在执行时的性能是会比 Java, Golang 要好,这也没什么好质疑与意外的。
 
C/C++,将内存管理的责任、权利完全的交给了开发人员。
这样子的作法,让开发人员欣喜若狂,因为,终于可以摆脱掉低阶又无趣的 Assembly 语言,却也还是能享受到控制、分配硬件资源的成就感。
 
但是,经过了几十年的观察,我们必须要承认一件事情⋯
全世界的开发人员当中,只有极少数、极少数的 “天才型” 的开发人员,能透过 C/C++  做好、做满控制、分配硬件资源;做好、做满内存的管理。
 
也就是说,全世界绝大多数、绝大多数的开发人员,还是平均要花费相当多、相当多的时间来解决 C/C++ 隐藏在代码中的内存管理上的缺陷。
 
所以,假如你是一位天天在写 C/C++ 的开发人员,建议你,可以考虑使用 Rust 来开发你未来的产品;这样子做,虽然不能保证你可以早点下班,但,绝对可以保证你晚上可以睡得安稳点。
 
至于,假如你是使用 Java或 Golang 开发 Cloud-Native 应用系统的开发人员,就真的是 “没有” 那个必要一定要使用 Rust…
 
主要的原因是:
在 Cloud-Native 的世界里,开发软件所面临的最大的挑战不是编程语言(代码)执行的速度,也不是 “频宽”,而是 “电子的速度”;不论是 5G, 还是光纎,都只是让我们拥有更宽的频宽,却都没办法改变 “电子” 跑 1 公里需要 5 micro seconds,的事实。
 
也就是说,Rust 的执行性能确实是较 Java,Golang 来的优,但在 Cloud-Native 的世界里,Rust 所开发出来的应用系统,并 “不会” 有效的提升 “用户的满意度” 的。
 

结论: 软件开发技术的未来; Rust, Java, Golang, WASM

   Rust, Java, Golang,再加上 WASM (WebAssembly) 将会是在边缘运算、Cloud-Native,上主要的开发语言;不仅仅是高效、可靠、可信任的开发语言,更是能让我们实现无限创意的开发语言⋯

About Post Author

方俊贤; Ken Fang

专利号: 201910652769.4; 一种深度学习的算法, 预测微服务持续发布、持续部署后对产品整体质量的影响, 获得国家知识财产局专利; 符合专利法实施细则第 44 条的规定。
Happy
Happy
0 %
Sad
Sad
0 %
Excited
Excited
0 %
Sleepy
Sleepy
0 %
Angry
Angry
0 %
Surprise
Surprise
0 %

Average Rating

5 Star
0%
4 Star
0%
3 Star
0%
2 Star
0%
1 Star
0%

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据