关于 2020 年你需要了解的 Rust

虽然许多程序员长期以来一直将 Rust 用于业余项目,但在 2019 年,该语言吸引了主要科技公司的支持,正如 Opensource.com 上关于 Rust 的热门文章所解释的那样。
118 位读者喜欢这个。
Person using a laptop

Rust 一段时间以来一直受到 Hacker News 等网站上程序员的广泛关注。虽然许多人长期以来 喜欢使用该语言 进行业余项目,但在 2019 年之前,它并没有在行业中流行起来,直到 2019 年才真正开始改变。

在过去一年中,许多大型公司,包括 微软Facebook英特尔,都表示支持 Rust,许多 较小的公司 也注意到了这一点。作为 2016 年欧洲最大的 Rust 会议 RustFest 的第一位主持人,我没有遇到一个在 Mozilla 之外专业使用 Rust 的人。三年后,在 2019 年的 RustFest 上,我交谈的每两个人中就有一个人在他们的日常工作中为另一家公司使用 Rust,无论是作为游戏开发者、银行的后端工程师、开发者工具的创建者,还是其他什么。

2019 年,Opensource.com 也通过报道对 Rust 日益增长的兴趣发挥了作用。如果您错过了这些文章,以下是过去一年中 Opensource.com 上关于 Rust 的热门文章。

使用 rust-vmm 构建未来的虚拟化堆栈

亚马逊的 Firecracker 是为 AWS Lambda 和 Fargate 提供支持的虚拟化技术,它完全用 Rust 编写。该技术的一位作者 Andreea Florescu 在 使用 rust-vmm 构建未来的虚拟化堆栈 中深入介绍了 Firecracker 及其相关技术。

Firecracker 最初是 Google 的 CrosVM 的一个分支,但由于两个项目不同的需求而迅速分道扬镳。尽管如此,仍有许多共同的部分最好在项目和任何其他用 Rust 编写的虚拟机管理器 (VMM) 中共享。考虑到这一点,rust-vmm 项目开始作为亚马逊和谷歌以及英特尔和红帽相互以及与其余开源社区共享通用 Rust “crates”(即软件包)的一种方式。 这些包括 KVM(Linux 虚拟化 API)、Virtio 设备支持和内核加载器的接口。

看到软件行业的巨头围绕用 Rust 编写的通用技术堆栈协同工作,真是令人惊叹。 鉴于此以及围绕 用 Rust 编写的技术堆栈 的其他合作关系,我对 2020 年看到更多这样的情况不会感到惊讶。

为什么选择 Rust 作为你的下一个编程语言

采用一种新的语言,尤其是在一家拥有长期建立的技术堆栈的大公司中,绝非易事。 我很荣幸撰写了 为什么选择 Rust 作为你的下一个编程语言,讲述了在如此多其他有趣的编程语言未被考虑的情况下,微软如何考虑采用 Rust。

选择编程语言涉及许多不同的标准——从技术到组织,甚至情感。 其中一些标准比其他标准更容易衡量。 例如,与理解组织或情感问题(例如开发者在使用这种新语言时的生产力或幸福感)相比,更容易理解技术变更的成本,例如调整构建系统和构建新工具。 更重要的是,易于衡量的标准通常与成本相关,而难以衡量的标准通常以利益为导向。 这通常导致成本在决策过程中获得更多权重,即使成本不一定超过收益——只是它们更容易衡量。 这使得公司不太可能采用一种新语言。

然而,Rust 最大的好处之一是它能够轻松衡量其编写安全且高性能系统软件的能力。 鉴于微软 70% 的严重漏洞是由于 Rust 旨在预防的内存安全问题造成的,并且这些问题每年给公司造成数十亿美元的损失,因此很容易衡量和理解采用该语言的好处。

微软是否会全面采用 Rust 还有待观察,但 Rust 的未来是光明的,仅仅因为它比现有技术具有清晰且可衡量的优势。

2020 年的 Rust

Rust 真的开始在行业中获得关注。 虽然要达到 C++ 等语言的普及程度还有很长的路要走。 我预计 2020 年会有更多公司开始采用 Rust。 Rust 社区现在必须将目光投向欢迎人们和公司加入社区,同时确保推动该语言发展到目前水平的因素保持不变。

Rust 不仅仅是一个编译器和一组库。 它是一群关心让系统编程变得容易、安全和有趣的人。 未来一年对于 Rust 从业余爱好者的语言发展成为软件行业使用的主要语言之一至关重要。

User profile image.
Ryan 是一位在柏林微软担任开发者布道师的程序员。 在他的日常工作中,他可以用许多不同的编程语言进行编程,但当他可以使用 Rust 时,他总是最享受。 除了编写 Rust 之外,Ryan 还喜欢探索柏林和其他城市的空间、烹饪/吃饭和肆无忌惮地跳舞。

评论已关闭。

Creative Commons License本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.