Rust,作为一门新兴的编程语言,已经连续五年程序夺得最受程序员喜爱的语言评比第一名了,它也受到越来越多企业的重视。为了更好的评估Rust的发展前景,我们搜集了一些开发者和企业对Rust的评价,看完本文,您将对Rust有一个更客观的认识。
首先我们来看看Rust用户的评价。
在2020Rust官方调研报告中,我们发现开发者们对Rust的信任度较高,有 83% 的受访者表示他们一直在使用该语言。稳定性是支持他们使用的一个重要原因。
Rust 作为一种用于生产的语言而广受欢迎,其中,有 40% 的软件开发者表示,他们在日常工作中经常使用 Rust。但也有一半的受访者表示没有在工作中使用Rust,也说明Rust仍有广阔的市场前景。
链接:Rust Survey 2020 Results | Rust Blog (rust-lang.org)
具体到开发者对Rust的偏爱,主要有以下几个原因。
1.Rust真正对编程语言做了一些实际的创新,用户的体验感更好。
2.Rust兼顾了上规模后的安全性与速度,用户一旦上手Rust,就离不开了。
3.Rust拥有一个热情的、能给予援助的社区。
StackOverflow 的首席 Rust 贡献者Jake Goulding也表示,“Rust 解决了呈现在其它许多语言中的痛点,为(我们)前进提供了坚实的一步,而它只有为数不多的缺点”。
Rust虽好,但也有一些吐槽,下面就来看看它“为数不多”的缺点。很多开发者都表示学习Rust的门槛较高,对没有系统编程经验的用户不太友好。除了Rust的复杂性,其较长的编译时间、还不够完善的生态系统都是用户弃用的原因。
一位名为matklad的Rust用户在其个人博客上发布的反对Rust的理由中,也提到了上述的几个因素。他表示,Rust 为改善控制所付出的代价是选择麻烦,由此带来复杂性和编译速度下降,会大大提高程序员的时间成本。
在文章中,他还提到Rust作为一门年轻的语言,还有很多地方有待完善,应该认真考虑选择新技术伴随的风险。何况目前还有很多优秀的替代语言,如: C、C++ 和 Ada。这些替代语言环境已较为完备,且在一些场景下,甚至比Rust的性能更好。他也质疑了Rust对不安全的定义,认为其前景并不乐观。
尽管Rust有一些不足,但不可否认的是,它是在逐渐被市场接纳的。前有微软全面采用Rust的传言,后有AWS将Rust编译器团队负责人收入囊中的报道,大型企业纷纷进军 Rust ,到底是出于怎样的考虑呢?我们来看几个案例。
1.Dropbox 使用 Rust 作为其部分文件同步引擎,Rust 的静态类型和编译时检查能提高处理复杂的代码库和并发时效率。
2.Coursera 在学生的编程作业功能中使用了 Rust,他们认为 Rust 比 C 更安全。
3.Figma 作为一个基于 web 的矢量图形和界面原型设计工具,选择在 Rust(以前用的是 TypeScript) 中重写他们的多人同步引擎以提高服务器性能。
4.npm同样提高服务器性能,更好管理Web公共服务的内存管理,选择用 Rust 重写他们的主要服务。
5.Microsoft 为了提高其内存安全性,开始尝试将 Rust 集成到其大型 C/ C++ 代码工程中。
6.Cloudflare 在其核心边缘逻辑中使用了 Rust,并将其作为内存不安全的 C 的替代方案。
7.Facebook 使用 Rust 重写了之前用 Python 编写的源码控制后端。Rust编译器反馈循环的易用性可以帮助降低 bug 造成的经济损失。
8.AWS 在 Lambda、EC2 和 S3 等对性能敏感的服务组件上使用了 Rust,并为Rust语言提供了支持。
9.Discord为了保证其内存安全和服务器性能,在其多个工程的客户端和服务器端中都使用了 Rust。
根据上述的几个案例,大致总结一下,可以发现,Rust的安全性、内存管理、编译检查等特点能够满足企业对安全性和性能提升需求。除此之外,还有很多使用Rust的企业,具体可以在Rust官网上一探究竟。
链接指路:https://www.rust-lang.org/production/users
总体来说,Rust的未来是光明广阔的,在大公司的支持下,它的社区在不断壮大;Rust的开发团队也在不断完善其生态环境,提升亲和力。尽管Rust目前还比较小众,但它安全、并发、高效的优势是具有绝对吸引力的,未来对Rust人才的需求一定会进一步扩大,入股Rust,真的不亏。
学习资料在这里!2020年末,Rust大会在深圳举办,会议直击发展前沿,大佬云集,干货满满。来自知名企业和高校的议题充分展现了 Rust 涉及到的方方面面,会议报告的pdf和视频已经在Rust的中文社区更新。
链接指路:Rust China Conf 2020 (rustcc.cn)
参考资料:
《Rust 2020 调查报告出炉,95%的开发者吐槽Rust难学》
https://mp.weixin.qq.com/s/7LOzfWNJA1MTJZ_piG3AnQ
《微软如何全面采用 Rust 的?》
https://medium.com/the-innovation/how-microsoft-is-adopting-rust-e0f8816566ba
《我为什么反对使用Rust?》
https://matklad.github.io/2020/09/20/why-not-rust.html
《Why AWS loves Rust, and how we’d like to help》
https://aws.amazon.com/cn/blogs/opensource/why-aws-loves-rust-and-how-wed-like-to-help/
《9 Companies That Use Rust in Production》
https://serokell.io/blog/rust-companies