前言
虽然并非一直如此清晰,但 Rust 编程语言从根本上来说是关于赋能的:无论你现在编写何种代码,Rust 都能让你走得更远,让你在比以往更广泛的领域中充满信心地进行编程。
例如,处理内存管理、数据表示和并发等底层细节的“系统级”工作。传统上,这个编程领域被视为神秘的,只有少数人经过多年学习才能避免其臭名昭著的陷阱。即使是那些实践者也小心翼翼,以免他们的代码容易受到漏洞、崩溃或损坏的影响。
Rust 通过消除旧的陷阱并提供一套友好、完善的工具来帮助你前进,从而打破了这些障碍。需要“深入”到较低层控制的程序员可以使用 Rust 来实现,而无需承担崩溃或安全漏洞的通常风险,也无需学习一个反复无常的工具链的精妙之处。更好的是,该语言旨在自然地引导你编写可靠的代码,这些代码在速度和内存使用方面都很高效。
已经从事底层代码工作的程序员可以使用 Rust 来提高他们的雄心。例如,在 Rust 中引入并行性是一项相对低风险的操作:编译器会为你捕获经典的错误。你可以更加大胆地对你的代码进行优化,并确信你不会意外地引入崩溃或漏洞。
但 Rust 不仅限于底层系统编程。它的表达能力和人体工程学足以使 CLI 应用程序、Web 服务器和许多其他类型的代码编写起来非常愉快——你会在本书的后面找到这两种类型的简单示例。使用 Rust 可以让你建立从一个领域转移到另一个领域的技能;你可以通过编写一个 Web 应用程序来学习 Rust,然后将相同的技能应用于你的 Raspberry Pi。
本书充分拥抱 Rust 赋予用户能力的潜力。这是一篇友好且平易近人的文本,旨在帮助你不仅提高你对 Rust 的知识,而且提高你作为程序员的整体能力和信心。所以,开始吧,准备好学习——并欢迎加入 Rust 社区!
— Nicholas Matsakis 和 Aaron Turon