Google 在今天官方博客上发布了来自 1,000 多名内部 Rust 开发人员的数据,该数据表明 Rust 并不比其它编程语言难学,尽管它的编译速度不是很快。
报告指出,该调查涵盖“Google所雇用的专业软件开发人员(或者关联领域)” 。
Rust 语言因其高性能,又有着与 C 和 C++ 等其它系统语言所缺乏的安全保证而受到开发者们的广泛赞赏。
但也会常听到开发者抱怨说,由于使用了所有权、借用等不熟悉的概念,该语言很难学习。Rust 中的所有权是一项编译时功能,可提供安全且自动的内存管理。“由于所有权对于许多程序员来说是一个新概念,因此这确实需要一些时间来适应,”Rust 文档中也给予了承认。
不过根据调查,尽管所有权借用与异步编程以及宏一起被列为 Rust 的三大“最大挑战”之一,但开发者还是相对较快地掌握了该语言。超过三分之二的人在两个月内为 Rust 代码库做出了贡献,三分之一的人在两个月内再次感到使用 Rust 与使用其它语言同样高效。
报告指出,对互操作和不安全代码的担忧有些过头了。
在接受调查的人中,只有 13% 的人有过 Rust 开发经验,其中大多数来自 C/C++、Python、Java、Go 或 Dart。“我们没有看到任何数据表明 Rust 相对于任何其它语言存在任何生产力损失,”该报告还指出。
Rust 的最大问题是编译速度。报告称,“到目前为止,构建速度慢是开发人员在使用 Rust 时遇到的第一大挑战”。
通过缓解措施,Rust 编译器做得很好,特别是在诊断和调试信息方面。给出的示例是模式匹配缺少案例时的代码建议,以及代码另一部分中未使用的比较时发出警告。
开发人员认为他们用 Rust 编写的代码更加准确,比用其它语言编程时更有信心,这一比例达到 85%。
谷歌和微软等科技巨头对 Rust 愈发表现出发浓厚的兴趣,主要是因为它提供了额外的安全性,而不会影响性能。
在最近的数据,Rust 的使用量正在增加。最近的 StackOverflow调查将 Rust 在编程语言中排名第 14 位,有 13.05% 的开发人员已经使用它,仅次于 Go,但高于 Kotlin。
小结
Rust 虽然是一种系统语言,但不太可能达到其它高级语言的流行程度,因为高级语言的设计目的是为了提高性能和易用性。