Rust 是一种注重安全性、速度和并发性的系统编程语言。它能编译成高效的本地代码,无需垃圾回收即可访问内存等底层资源,同时还能防止分隔故障。
作者讨论了他们几年来用 Rust 构建大型应用程序和库的经验。他们发现 Rust 的借用检查器和类型系统有助于减少错误,但该语言的僵化性以及在发布板条箱和管理泛型方面缺乏人机工程学,使得开发速度有时比其他语言慢。
喜欢 Rust 程序的坚如磐石。当你学会欣赏 Rust 为你提供的保护后,就很难再回到其他语言了。我短暂地回到了 Go。我很快再次陶醉在快速开发的速度中。然后我遇到了运行时崩溃panic。
Rust 有它的缺点。它很难招聘,学习起来很慢,而且过于僵化,无法快速迭代。解决内存和性能问题很困难,尤其是对于异步代码。
重构可能会很艰难
Rust 丰富的类型系统是福也是祸,用 Rust 类型思考是一个梦想;管理 Rust 的类型可能是一场噩梦。
数据和函数签名可以具有通用类型、通用生命周期和特征约束。这些约束可以有自己的通用类型和生命周期。有时,您会遇到比实际代码更多的类型约束。
当您需要调整 14 种不同的定义才能向前迈出一步时,很难取得快速进展。
总的来说,Rust 允许构建可靠的底层软件,但在开发速度和可用性方面需要做出权衡。