前言

foreword.md
commit 5e085bd1add34aec03416e891751552b439dde52

事物并非总是简单明了,Rust 程序设计语言的本质在于 授权empowerment):无论你现在编写的是何种代码,Rust 能授权你在更为广泛的编程领域走得更远,写出自信。

举例来说,“系统层面”(“systems-level”)处理内存管理、数据表示和并发的底层细节。这个编程领域被视为神秘的传统,只为数年专注学习所挑选出的少数人所触及,也只有他们能避免其恶名昭著的缺陷。即是谨慎的实践者,亦唯恐代码被利用、崩溃或损坏。

Rust 打破了这些障碍,其消除了旧的缺陷并提供了伴你一路同行的友好、精良的工具。想要 “深入” 底层控制的程序员可以使用 Rust,无需冒着常见的崩溃或安全漏洞的风险,也无需学习时常改变的工具链的最新知识。其语言本身更是被设计为自然而然的引导你编写出在运行速度和内存使用上都十分高效的可靠代码。

已经在从事编写底层代码的程序员可以使用 Rust 来提升抱负。例如,在 Rust 中引入并行是相对较为低风险的操作:编译器会为你捕获经典的错误。同时你可以自信的采取更为激进的优化,而不会意外引入崩溃或漏洞。

另一方面 Rust 并不局限于底层系统编程。其表现力与工程学足以愉快的编写 CLI 应用、web server 和很多其他类型的代码 —— 在本书之后你会找到所有这些场景的简单示例。使用 Rust 你学习的技能可以从一个领域延伸到另一个领域;你可以学习 Rust 来编写 web 应用,接着将同样的技能应用到你的 Raspberry Pi(树莓派)上。

本书全面拥抱 Rust 授权于用户的潜力。其内容平易近人,致力于帮助你不仅仅提升 Rust 的知识,并且提升你作为程序员整体的理解与自信。那么让我们准备好深入学习 Rust吧(打开新世界的大门 :)) —— 欢迎加入 Rust 社区!

— Nicholas Matsakis 和 Aaron Turon