我们为何期待 Rust 2.0?

发布于:2023-05-22 17:33

Stackoverflow 发布的《2022 Developer Survey》数据显示,Rust 已经第七年成为最受欢迎的编程语言,87% 的开发人员表示他们希望继续使用它。Rust 最初由 Mozilla 创建,后来被 Dropbox、Microsoft、Facebook 等公司采用。其主要好处是可以实现类似 C 的性能,同时仍然保持开发者在使用 JavaScript 和 Python 等语言进行开发时习惯的内存安全。

 

 

虽说是 Rust 是最受欢迎的编程语言,但也并不代表它没有缺点。由于 Rust 早期是野蛮生长的,而且这个过程中管理层面较为混乱,导致现在积累了许多问题。因此,很多人都在期待 Rust 2.0 的出现,能够快速甩开这些问题。

 

Rust 社区治理混乱

 

微软首席工程师 Nick Cameron,曾经是Rust核心团队的成员,就在博客《Rust in 2023》中指出,目前最重要的是解决Rust社区的治理和领导问题。因为这些问题阻碍了许多潜在工作,而且持续时间越长,会导致项目累积的 “治理债” 越多。更令人尴尬的是,在 Rust 核心团队内讧一年多后,仍没有关于新领导团队的建议。

 

而对于 Rust 的治理,Nick Cameron 认为需要更新 RFC 流程,以及重新审视团队和工作组的组织架构。目前由于缺少领导团队完成当前变革,这些工作都停滞了。

 

此外,他认为 Rust 要重写审视 “稳定而不停滞” 的战略。避免停滞非常重要,Rust 不能停止创新,但也不能无限制地任由其发展。因为语言的复杂性和规模是有代价的,这与 Rust 让人们编写可靠和高性能软件的使命不一致(他认为需要让编程语言更简单、更小、更易于使用)。仅仅保持向后兼容性并不意味着实现了稳定性。

 

Nick 表示自己有点担心 Rust 正在讨论或设计的新功能的数量,而且目前也没有关于 Rust 发展方向的策略。

 

一个好消息是,不久前,Rust 项目发布了一项有关新的治理计划的RFC;旨在建立了一个领导委员会 (Leadership Council) 以替代原本的核心团队 (Core Team),委员会将其大部分权力下放给各团队。

 

此 RFC 建立的领导委员会工作重点是确定团队权限之外的工作并确定其优先次序。委员会主要是委托这些工作,而不是自己做这些工作。委员会还可以作为团队之间的协调、组织和问责机构,例如跨团队的工作、路线图和项目的长期成功。

 

Rust 学习难度大

 

通俗地说,就是 Rust 太复杂了,学习和使用 Rust 成本太高了。关于这一点, 官方自己也都承认了。

 

“建立了大型 Rust 用户团队的公司报告说,Rust 工程师的上手时间约为 3-6 个月。一旦人们学习了 Rust,他们通常会喜欢上它。即便如此,许多人表示在使用它时感觉 “认知开销” 很高,而 “学习曲线” 仍然是不使用 Rust 的最常见原因。事实是,即使在您了解了 Rust 借用检查器的工作原理之后,还会有许多 “小细节” 需要正确处理才能让您的 Rust 程序编译。”

 

至于为何会出现这种情况,有OSC网友道出了一些原因:

 

 

字节跳动基础架构部服务框架研发工程师吴迪指出,在官方发布的 2024 RoadMap 中,重点就是要解决 Async Rust 的学习曲线、使用难度和相关生态的问题,其中就涵盖了一些 Rust 社区最为瞩目的特性,可以帮助用户简化代码的编写以及降低使用成本,比如 Generic Associated Type(GAT)和 Type Alias Impl Trait(TAIT),以及这两个特性稳定之后所要支持的终极目标:Async Fn In Trait(支持在 Trait 中定义异步函数,GAT 和 TAIT 为这个特性的基础支持)。

 

所谓树大招风,Rust 越来越流行的同时,不可避免会招来更多批评的声音。我们寄希望于 Rust 2.0 的到来。那在这个过程中,我们可以留下什么痕迹呢?

 

2023 年 5 月 28 日,GOTC 2023“Rust”分论坛将邀请国内外在对 Rust 有深入研究的公司与专家,分享 Rust 开发实践和心得体会,以及语言相关生态的发展情况等内容。

 

 

全球开源技术峰会(Global Open-source Technology Conference),简称 GOTC,是由上海浦东软件园、开放原子开源基金会、 Linux 基金会亚太区和开源中国联合发起的,面向全球开发者的一场盛大开源技术盛宴。5 月27日至28日,GOTC 2023 将于上海举办为期 2 天的开源行业盛会。大会将以行业展览、主题发言、特别论坛、分论坛的形式展现,与会者将一起探讨元宇宙、3D 与游戏、eBPF、Web3.0、区块链等热门技术主题,以及开源社区、AIGC、汽车软件、开源商业化、开源教育培训、云原生等热门话题,探讨开源未来,助力开源发展。

 

GOTC 2023 由一个主论坛、十五个分论坛组成,在线下举办的同时,还将在线上直播。GOTC 2023报名通道现已开启,诚邀全球各技术领域开源爱好者共襄盛举!

账户登录

获取验证码
记住密码 忘记密码 ?
登录

还没有账户?去注册 >

找回密码

获取验证码
确认

恭喜您成功修改密码

弹窗将在3秒之后关闭,