Rust语言与其他主流语言相比,有什么优劣势吗?

非凸科技 发布于 11/02 18:00
阅读 7K+
收藏 2

11月25日16点LF开源软件学园为您带来企业拥抱开源101入门公开课>>>

国内外不少知名互联网或科技公司,都在采用 Rust 重构技术栈,比如字节的飞书、Google 的 Fuchsia 等。有人预见未来,Rust 或在大多数领域代替 C/C++,成为开发者的主力语言。真的能替代吗?Rust强在哪里?

加载中
4
抢小孩糖吃
抢小孩糖吃

不光是学习成本的问题,可读性也降低了不少。我去翻翻更多的项目,他们是怎么解决这个事情的。

F
Francesca
回复 @抢小孩糖吃 : 中间变量其他语言也有这个问题,反正你不可能一行写很多代码,可读性反而不高
__JM_Joy__
__JM_Joy__
回复 @抢小孩糖吃 : 并不觉得中间变量会影响可读性,反而单步调试看变量值更方便了,只不多写的时候敲多几个键而已。
抢小孩糖吃
抢小孩糖吃
回复 @__JM_Joy__ : 我会写内核和嵌入式C,所以你说的是什么领域?rust可读性问题,更多的是需要手写更多的中间变量,而这些中间传值变量没有实际意义。
江柯
江柯
回复 @hlizard : 哈哈哈
__JM_Joy__
__JM_Joy__
可读性没问题,你有觉得有问题,大概率是你对那个领域接触太少。
下一页
4
Phreezing
Phreezing

用了生命周期和所有权机制保证了一定程度的“内存安全”和“并发安全”,这算是相对于Cpp的优势之一。第二个是工具链相对Cpp比较完善,cargo什么的比cmake + apt/pacman好用多了,当然目前还没有一个好用一点的IDE。还有就是语法没有cpp那么多历史包袱稍微现代了一点,用Result<T, E>来做错误处理,pattern match之类的语法特性都算是比较好的实践。

3
笨笨小锅锅
笨笨小锅锅
c语言胜在语法简洁,现在的语言定义变量非要搞成复杂的形式,美其名曰自然语言的语法,矫情了
vga
vga
有道理!
2
E
ElI_LINUX

学了两周了,还是很蛋疼,Some(v),Option(v),这鬼东西,写着写着,不,写不出来,也看不懂

wei2011
wei2011
回复 @Pader : 生命周期标记让人蛋疼
Pader
Pader
https://blog.vgot.net/archives/rust-some.html Some 和 Option 不算什么,生命周期才是大头。
非凸科技
非凸科技
别着急,慢慢来,奔着高薪,也要坚持下去哇。:sunglasses:
2
northming
northming

只要是冯落衣慢结构CPU, C++没法取代。

1
过马路的蚂蚁
过马路的蚂蚁

缺点就是学习成本高。

非凸科技
非凸科技
成本跟收益是成正比的:joy:
1
xoHome
xoHome

任何一门语言的狂热粉,都是自身负面缺陷的一部分,Rust语言是不错,就是这帮子狂热粉太掉价了。。

非凸科技
非凸科技
也不是狂热,只是一种新语言,确实出了想要的效果,欣喜若狂也不为过哇
1
gowk
gowk

劣势是太复杂,学习曲线太高,曲高和寡,注定不会成为主流编程语言

1
无库
代替C语言基本不可能,可以代替部分C++应用层代码。语言的特殊使用方法非常多导致学习曲线很陡。做不到象C语言对内存的精细控制,所以想做极致的程序还是用C语言。好处是工具链比较好用。另只要能编译过去,基本大问题没有,这样对老板比较有力,容易验收程序。
0
d
dwcz

Rust,强在工具更现代。弱在概念缺乏整合。替代C++是肯定的,替代C还要看看。想替代C的语言太多了,谁能最终胜出,还是个未知数。

_snake_
_snake_
回复 @dwcz : 洗洗睡吧
d
dwcz
回复 @retrhelo : 估计是不用接口和元编程的。
retrhelo
retrhelo
回复 @dwcz : 那是因为OOP的概念已经被证明是高效的了,所以不再需要专门去宣传了。面向对象中的很多概念现在都仍在大量使用,不存在淘汰一说。
d
dwcz
回复 @江柯 : 不是象想多了,而是现代语言有几个把支持对象当宣传亮点?都在宣传新的编程方式。对象编程、模式编程,经过大量实践,其弱点早就暴露无遗。
江柯
江柯
回复 @dwcz : 淘汰面向对象想多了吧
下一页
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部