在编程语言界,要论近段时间风头正盛的语言,那么非 Rust 莫属:
本月初,Google 宣布向 Rust 基金会捐赠 100 万美元,用于支持一项提升 C++ 和 Rust 互操作性的“Interop Initiative”计划;
不久前,微软发布招聘启事,寻找 Rust 开发者帮助其 Microsoft 365 团队用 Rust 重写 C# 构建的云服务核心组件;
随着 Rust 成为 Linux 内核第二官方语言,最新的 Linux 6.8 内核也紧跟 Rust 最新版本的脚步,升级至 Rust 1.75 版本。同时最新的补丁则将内核的 Rust 代码迁移到 Rust 1.76,并准备好迎接即将发布的 Rust 1.77;
对此,不少人也十分好奇,难道仅是因为安全性就可以让 Rust 光速“出圈”?究竟有谁在用 Rust,又用它来做些什么?2 月 19 日,Rust 社区在调研了全球近万名开发者后发布一份《2023 年度 Rust 现状调查报告》,给出解答。
中国 Rust 开发者不在少数,占比 6%
根据数据显示,2023 年使用 Rust 的开发者略有增加,从 2022 年的 91% 增加到 2023 年的 93%。
其中 49% 的受访者称,每天(或几乎每天)都会使用——比上一年小幅增加 2 个百分点。
放眼全球 Rust 的开发者的聚集地,排名前 10 的国家依次为:美国 (22%)、德国 (12%)、中国 (6%)、英国 (6%)、法国 (6) %)、加拿大(3%)、俄罗斯(3%)、荷兰(3%)、日本(3%)和波兰(3%)。
大多数受访者表示,他们最愿意用英语交流技术主题,比例为 92.7%。同样,中文是技术交流首选语言的第二高选择,占比 6.1%。
Linux、VS Code 是 Rust 开发者最常用的工具
在没有使用 Rust 的用户中,31% 的人认为使用 Rust 有难度,这是他们没有使用 Rust 的主要原因,67% 的人表示他们还没有机会优先学习 Rust。
当问及为什么此前使用过 Rust 的开发者后来要弃用时,46% 的人称这是自己无法控制的,或因为公司研发要求等。31% 的开发者表示自己遇到了比 Rust 更好的语言,还有 24% 的人认为 Rust 太难了。
在过去一年中,受访者对 Rust 的专业知识了解普遍加深!23% 的受访者可以用 Rust 编写(仅)简单的程序(比 2022 年减少了 6 个百分点),28% 的受访者可以编写生产就绪的代码(增加了 1 个百分点),47% 的受访者认为自己使用 Rust 提高工作效率(高于 2022 年的 42%)。
对于 Rust 开发者而言,他们最常用的操作系统是 Linux,其次是 macOS 和 Windows。
当然 Rust 程序员也主要针对 Linux 平台开发软件,其次也会基于 WebAssembly、嵌入式和移动平台,这一点说明了 Rust 具有通用性。
和很多程序员一样,更为细分的 Rust 开发者最常用的 IDE 也是 Visual Studio Code,而去年 JetBrains 专门针对 Rust 而开发的 RustRover 也获得了不少的关注。
工作中的 Rust
具体落实到实际的生产环境中时,根据调研数据显示,Rust 在工作中的使用量逐年持续上升,这一点和文章伊始所提及的有越来越多的公司拥抱 Rust 不无关系。
2023 年的受访者中,有 34% 开发者在工作的大部分编码中使用 Rust,这一数字比 2022 年增加了 5 个百分点。在这组受访者中,39% 的组织在大量使用 Rust。
数据显示,开发者愿意花时间投入到 Rust 语言的首要原因还是因为 Rust 能够构建相对正确且无错误的软件,这一比例高达 86%,比 2022 年的调查提高了 4 个百分点。第二大原因是 Rust 的性能特点,占 83%。
此外,79% 的受访者认为 Rust 有效地帮助他们的公司实现目标,这一数值比 2022 年增加了 7 个百分点。77% 的受访者表示,他们的公司未来可能会再次使用 Rust,比上一年增加了 3 个百分点。
有趣的是,认为使用 Rust 对其组织而言具有挑战性的人数有所减少:2023 年为 34%,2022 年为 39%。同时,越来越多的开发者表示,采用 Rust 所付出的代价是值得的:2023 年为 64%,2022 年为 60%。
造成这种情况的因素有很多,但人们对 Rust 的认识不断提高,很可能导致资源激增,从而使使用 Rust 的新团队得到更好的支持。
就技术领域而言,Rust 在创建服务器后端、Web 和 Web 服务以及云技术方面似乎尤其受欢迎。
挑战
和过去调查一样,Rust 现状调查报告也揭晓了这门语言当前所面临的挑战。
根据数据显示,在对 Rust 的未来表示主要担忧的受访者中(9,374 人),大多数人担心 Rust 变得过于复杂(43%),比 2022 年增加了 5 个百分点。42% 的受访者担心 Rust 在科技行业没有足够的使用率。
2023 年也有 32% 的受访者最担心 Rust 开发者和维护者得不到适当的支持——比 2022 年增加了 6 个百分点。
其实这样的担心不无道理,过年几年间,Rust 内部因管理问题带来不少的混乱。2021 年, Rust 编程语言的审核团队在 GitHub 的 pull request 上突然宣布辞职,且即刻生效,彼时审核团队成员 Andrew Gallant 在声明中写道:团队辞职是为了抗议核心团队认为自己不对除自己以外的任何人负责。后来为了更好地维护 Rust 项目,该团队在 2023 年 6 月宣布成立新的顶级治理机构——领导委员会(Rust Leadership Council),移除 Rust 核心团队和临时领导者职位都将被取消,此后将由 Rust 理事承担顶级治理问题的责任。
就 Rust 用户希望实现、稳定或改进的功能而言,他们最希望改进的领域是 Trait (特征别名、相关类型默认值等)、const 执行(通用 const 表达式、const 特征方法等)和 async(异步闭包、协程)。
有趣的是,20% 的受访者回答说他们希望 Rust 放慢新功能的开发速度,这可能与前面提到的 Rust 变得过于复杂的担忧是密不可分的。
也有不少 Rust 开发者对异步问题感到头疼。
受访者希望 Rust 维护者主要优先修复编译器错误(68%)、提高 Rust 程序的运行时性能(57%)以及改进编译时间(45%)。
以上是《2023 年度 Rust 调查报告》的部分精彩内容,完整报告详见:https://blog.rust-lang.org/2024/02/19/2023-Rust-Annual-Survey-2023-results.html