Rust 新标准:2024年开发者将迎来什么

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

Rust 新标准:开发者将迎来什么



Rust Foundation 团队正式发布了新语言标准的草案——Rust Edition 2024。这是自 Rust 2021 发布以来的首次重大更新,它将从根本上改变开发者的日常工作。新标准侧重于提高安全性、性能和生态系统的便利性。让我们来分析一下关键变化。



主要新特性



  • 改进的所有权系统(Borrow Checker)——新标准引入了更灵活的借用分析器。现在,编译器将更少地错误阻止正确的代码,尤其是在涉及闭包和多线程的复杂场景中。
  • async 块的稳定化——异步编程变得更加方便。在 Rust 2024 中,将可以在普通表达式中使用 async 和 await,而无需将它们包装在单独的函数中。这将简化网络服务和 I/O 处理程序的编写。
  • 简化 trait 的使用——引入了匿名 trait 并改进了对 impl Trait 的支持。开发者将能够更快地描述多态函数,而无需创建额外的结构体。
  • 新的安全属性——扩展了 #![deny(unsafe_code)] 的功能。将出现 #![forbid(unsafe_op_in_unsafe_fn)],这将强制更严格地控制即使在 unsafe 块内的不安全操作。
  • 改进的 C/C++ 集成——新标准包含了用于 FFI(外部函数接口)的稳定 ABI。这意味着从 Rust 调用 C 库将变得更快、更安全,这对系统编程至关重要。


这将如何影响生态系统



据开发者估计,迁移到 Rust 2024 只需要对代码进行最少的修改。大多数用先前版本编写的项目都将兼容。但是,需要注意以下几点:



  • 更新 Cargo——包管理器将获得一个新命令 cargo fix --edition,该命令会自动使代码适应新标准。
  • 标准库的更改——一些过时的函数(例如 std::mem::uninitialized)将被标记为 deprecated。建议将它们替换为 MaybeUninit。
  • LSP 支持——代码分析器(rust-analyzer)已经更新以支持新结构,这将加速重构。


这对 Python 开发者意味着什么



对于那些在学习 Python 之后学习 Rust 的人来说,新标准将是一个惊喜。简化的 trait 和异步处理使 Rust 更接近熟悉的 Python 风格。同时,它保留了主要优势——无需垃圾回收即可完全控制内存。这对于创建高负载微服务和嵌入式系统尤其重要。



何时发布



Rust 2024 的最终版本预计将于 2024 年 12 月发布。现在就可以测试 nightly 版本并为迁移做好准备。Rust 团队建议从较小的模块开始更新,以避免不兼容问题。



由 PythonLib 编辑部编写。请关注我们的更新——我们将在后续文章中介绍使用新标准的实际示例。

推荐库