前言

虽然不是那么明显,但是 Rust 编程语言从根本上讲就是关于赋能的:无论你现在编写哪种代码,Rust 都能让你在更广泛的编程领域中比以前走得更远,更自信。

例如,“系统级”工作涉及内存管理、数据表示和并发性的底层细节。传统上,这是一个神秘的编程领域,只有花费了必要时间来学习避免其臭名昭著的陷阱的少数人才会涉及到。甚至那些实践者也要谨慎行事,以免代码出现漏洞,崩溃或损坏。

Rust 通过消除旧的陷阱,并提供了一套友好、完善的工具集帮助你,来打破这些障碍。需要“深入”到较底层控制的开发者可以使用 Rust 来做到这一点,而无需担心崩溃或安全漏洞的常见风险,也无需学习纷繁复杂的工具链细节。更好的是,Rust 语言旨在引导你自然地编写出在运行速度和内存使用方面都高效的可靠代码。

已经在从事编写底层代码的开发者都可使用 Rust 来提高自己的抱负。例如,在 Rust 中引入并行性是一个相对较低风险的操作:编译器会为你捕获典型的错误。你可以在代码中进行更积极的优化,并确信不会意外引入崩溃或漏洞。

但 Rust 并不局限于底层系统编程。其表现力和人体工程学特性,使得命令行应用程序、Web 服务器和许多其他类型的代码编写起来非常愉快——在本书后面将给出这两种应用的简单示例。使用 Rust 来工作可让你建立从一个领域转移到另一个领域的技能;你可以通过编写 Web 应用程序来学习 Rust,然后将这些相同的技能应用于树莓派(Raspberry Pi,属于嵌入式方面)开发。

本书充分体现了 Rust 增强用户编程能力的潜力。本书内容通俗易懂,不仅帮助你掌握 Rust 的知识,还可以提高你作为开发者的影响力和信心。准备好,现在就开始学习吧——欢迎加入 Rust 社区!

— Nicholas Matsakis 和 Aaron Turon