* Error Handling机制好太多 , 用Result封装函数运行结果灵活性大大提高,代码也大大简洁
* 函数式编程支持较好 , 有Lambda这种东西,使得它写起来甚至有Ruby的感觉
* 效率高,没有了GC和Runtime , 速度是没得说的
* 支持范型
* 有宏和编译器插件这些黑客技 , 语言扩展性较好
* 社区活跃度更高,更强调社区的作用,有[RFC](GitHub - rust-lang/rfcs: RFCs for changes to Rust) 。[中文社区](Rust China)也有了
Rust的劣势是:
* 语言特性复杂,对新手就不会那么友好
* 稳定性不够,语言的进化较激进
* 第三方库的成熟度还落后于Go,商业化的应用也还不够
对比 Go 语言,Rust 有什么优势和劣势?我并没有什么编程的经验 , 觉得编程实在是太复杂了,不喜欢去研究太多,对这个也不怎么懂,只能说自己是个半吊子,就是所掌握的知识,也是东拼西凑的 , 朋友和我说点儿,自己去书上看一点儿,只能说根据自己的体验给出一些体会吧 。
Rust的优势是:
1、Rust把安全、精确的内存管理作为一切的中心放在首要的位置 。
2、Rust同时拥有特别强的控制性和特别强的安全性 。
3、Rust语言通过: 优秀的类型系统设计、 严格的编译器静态审查、 配合程序员局部核对、加上少量的运行时校验,保障了内存安全 。
4、Rust的语言特别的复杂,导致学习曲线比较陡峭,对于初学者来说难度较大 。但学通之后将终生受益 。
5、效率高 , 速度特别的快
6、 支持范型
7、 社区活跃度很高,更加的强调了社区的作用 。
8、Rust 有更强的语义,更容易捕获错误的逻辑 , 编译器直接检查出你代码中的不安全的部分
Rust的劣势是:
1、 语言相对来说比较复杂,对于新手来说,让新手摸不着头脑 。
2、还不算太稳定 。
其实我觉得什么代码啊编程啊这些东西还是比较适合理工的学生去研究,我一看脑袋就大 , 完全不明白在讲什么 。我大概了解的就是这些,语言的话大家可以多方面的去了解,也不是说有缺点就是不好,看配置看个人吧 , 每个人习惯不一样 , 也许有的人用不稳定的还觉得挺好呢 , 有的人就喜欢比较完美的,在我看来编程这个东西真的是很复杂,会有很多的代码,这些代码弄得我自己头都大了,有的时候还得去恶补一下 。
Rust 和 Go,哪个性能更好?要说性能,那是Rust更好 。更多的编译期优化、无 GC 等特点加持 , 开发高性能应用自然是 Rust 性能高 。据统计利用 Rust 开发的 RipGrep 性能甚至赛过使用 C 开发的 Grep 。
但是性能不是唯一考量,当你纠结 Borrow Check , 纠结 unsafe,纠结 copy clone , 纠结各种奇怪的类型限制的时候;当你 cargo build 怒草电脑风扇三分钟的时候;人家 GoLang 可能早就发两个版了 。
同时 Rust 的语法花活众多,遍历数组可以写循环也可以 for_each() 一行流 。不像 GoLang 那么白开水谁写都差不多一个味道,经常第一天想到神来之笔快乐 Coding 到半夜第二天爬起来发现昨晚写的都甚么东西看不懂不如蜘蛛爬 , 这是坠痛苦的!
Go 的编译器为了个编译速度快连循环不变式提升、循环展开、对齐等等优化一个都不做,函数内敛一堆限制大多数情况都不做(比如函数里有个 for 或者 defer 或者 select 等 , 或者函数多于 40 个表达式),拥有的优化一只手都能数的过来:
基础优化欠缺 , 高级优化更是一个没有 , 和在 Debug 配置编译下的 -O0 优化的 C++ 差不多一个概念(而且跑得更慢),哪来的资本和 rust 比性能 。
推荐阅读
- 电视没有蓝牙怎么连接电视,没有蓝牙的电视机怎么接蓝牙设备
- 平板做动作游戏,平板做动作游戏软件
- mysql数据库整体迁移,mysql数据库怎么迁移
- c语言的valid函数 c语言va_arg
- 留学chatgpt,留学查体肝钙化6能行吗
- u盘出问题了怎么修复,u盘出现问题
- 虚拟机用哪个镜像,虚拟机镜像的作用
- linux命令及示例 linux命令技巧
- 苹果cms怎么设置自动删重,苹果cms自动生成tag