From c3116f0e022c5afd8e1e3ec9181c3c84e969a6ac Mon Sep 17 00:00:00 2001 From: lispking Date: Fri, 19 Apr 2024 06:41:15 +0800 Subject: [PATCH] Finish intro --- src/SUMMARY.md | 1 + src/image.png | Bin 0 -> 97383 bytes src/images/does_not_compile.svg | 72 +++++++ src/images/not_desired_behaviour.svg | 75 +++++++ src/images/panics.svg | 70 +++++++ src/images/unsafe.svg | 291 +++++++++++++++++++++++++++ src/intro.md | 64 +++--- src/intro_zh.md | 45 +++++ 8 files changed, 590 insertions(+), 28 deletions(-) create mode 100644 src/image.png create mode 100644 src/images/does_not_compile.svg create mode 100644 src/images/not_desired_behaviour.svg create mode 100644 src/images/panics.svg create mode 100644 src/images/unsafe.svg create mode 100644 src/intro_zh.md diff --git a/src/SUMMARY.md b/src/SUMMARY.md index f2ff520..b2ba355 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -1,6 +1,7 @@ # Summary - [封面](./cover.md) +- [译著](./intro_zh.md) - [介绍](./intro.md) - [类型](./chapter_1.md) - [用户类型](./chapter_1/user_type.md) diff --git a/src/image.png b/src/image.png new file mode 100644 index 0000000000000000000000000000000000000000..8f8ec0ddedaec226212827026ac76f039ab6339d GIT binary patch literal 97383 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®8<>aT#)m;zW+TroOGYoYIMZG!6i9F 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 literal 0 HcmV?d00001 diff --git a/src/images/does_not_compile.svg b/src/images/does_not_compile.svg new file mode 100644 index 0000000..48b7b4d --- /dev/null +++ b/src/images/does_not_compile.svg @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/images/not_desired_behaviour.svg b/src/images/not_desired_behaviour.svg new file mode 100644 index 0000000..47f4024 --- /dev/null +++ b/src/images/not_desired_behaviour.svg @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/images/panics.svg b/src/images/panics.svg new file mode 100644 index 0000000..be55f5e --- /dev/null +++ b/src/images/panics.svg @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/images/unsafe.svg b/src/images/unsafe.svg new file mode 100644 index 0000000..d4fdc08 --- /dev/null +++ b/src/images/unsafe.svg @@ -0,0 +1,291 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/intro.md b/src/intro.md index e1422a8..b740cec 100644 --- a/src/intro.md +++ b/src/intro.md @@ -1,45 +1,53 @@ -> [原文链接](https://www.lurklurk.org/effective-rust/intro.html) +# 引言 -> “代码更像是指南,而不是实际的规则。” —— Hector Barbossa +> “代码更像是‘指导原则’,而不是实际规则。” —— 赫克托·巴博萨 -# 引言 -在编程语言的江湖中,Rust 如同一颗新星,以其独树一帜的安全特性和严谨的类型系统,赢得了开发者的青睐。 +Scott Meyers 的原版《Effective C++》一书取得了巨大的成功,因为它引入了一种新的编程书籍风格,专注于从实际创建 C++ 软件的经验中学习到的指南。值得注意的是,这些指南都是在解释为什么它们是必要的原因背景下进行讲解的 —— 允许读者自行决定他们特定的场景是否需要违反规则。 + +《Effective C++》的第一版于1992年出版,那时尽管 C++ 还很年轻,但它已经是一个包含了众多隐患的复杂语言;拥有一本指导其不同特性交互的指南是至关重要的。 + +Rust 也是一种年轻的语言,但与 C++ 相比,它几乎没有隐患。其类型系统的强大和一致性意味着如果一个 Rust 程序能够编译,那么它已经有一个不错的机会可以正常工作 —— 这种现象之前只在更学术、更不易接近的语言如 Haskell 中观察到。 -近日,一本备受瞩目的新书《Effective Rust》横空出世,它不仅为我们揭示了 Rust 编程的深层智慧,还提供了实用的实战技巧。 +然而,这种安全性 —— 包括类型安全和内存安全 —— 是有代价的。Rust 因为其陡峭的学习曲线而出名,新来者必须经历与借用检查器的斗争、重新设计数据结构以及被生命周期搞得晕头转向的入门仪式。一个能够编译的 Rust 程序可能有很大的机会正常工作,但是为了使其编译而进行的斗争是真实存在的 —— 即使 Rust 编译器的错误诊断非常有助于解决问题。 -本文将从这本书的精彩引言出发,带你领略 Rust 的优势与挑战,并预告将持续翻译分享,为读者带来 Rust 编程的全面解析。 +因此,这本书的目标层次与其他《Effective <语言>》书籍略有不同;有更多的条目涵盖了 Rust 的新概念,尽管官方文档已经包括了这些主题的很好介绍。这些条目的标题类似于“理解…”和“熟悉…”。 -# 《Effective Rust》引言简述 +Rust 的安全性也导致完全没有标题为“绝不…”的条目。如果你真的不应该做某件事,编译器通常会阻止你这样做。 -### 全书由六个部分组成: +尽管如此,文本仍然假设读者对语言的基础有所了解。它还假设使用的是2018版的 Rust,使用稳定工具链。 -1. **类型**:围绕Rust核心类型系统的建议。 -2. **概念**:构成Rust设计核心思想的建议。 -3. **依赖关系**:关于使用Rust包生态系统的建议。 -4. **工具**:关于如何通过超越Rust编译器来改进代码库的建议。 -5. **异步Rust**:关于使用Rust异步机制的建议。 -6. **超越标准Rust**:关于在超出Rust标准、安全环境时,如何工作的建议。 +用于代码片段和错误信息的具体 `rustc` 版本是 `1.60`。Rust 现在已经足够稳定(并且有足够的向后兼容性保证),代码片段不太可能需要为后续版本进行更改,但错误信息可能会因你使用的编译器版本而有所不同。 -> 尽管“概念”部分可以说是比“类型”部分更基础,但它故意排在第二位,以便从开始到结束阅读的读者可以首先建立一些信心。 +文本还多次引用并与 C++ 进行了比较,因为这可能是最接近等价的语言(特别是 C++11 的移动语义),也是 Rust 新手最可能遇到的前一种语言。 -### Rust 的优势:安全的护城河与强大的类型系统 +组成这本书的条目分为六个部分: +1. **类型**:围绕 Rust 核心类型系统的建议。 +2. **概念**:构成 Rust 设计的核心思想。 +3. **依赖项**:关于使用 Rust 包生态系统的建议。 +4. **工具**:关于如何通过超越 Rust 编译器来改进代码库的建议。 +5. **异步 Rust**:关于使用 Rust 异步机制的建议。 +6. **超出标准 Rust**:关于在超出 Rust 标准安全环境工作时的建议。 -1. 安全性:Rust 在类型安全和内存安全方面的卓越表现,使其在编译阶段就能抵御大量潜在的错误。这与 C++ 等语言相比,无疑是 Rust 的一大亮点。 -2. 类型系统:Rust 的类型系统不仅强大,而且一致,这让 Rust 程序在编译时就能捕捉到更多的错误。一个能够顺利编译的 Rust 程序,往往已经具备了较高的稳定性。 +尽管“**概念**”部分可以说是比“**类型**”部分更基础,但它故意放在第二位,以便从开始到结束阅读的读者可以先建立一些信心。 +以下标记,借用了 [Rust 书]中的 Ferris,用于标识在某些方面不正确的代码。 -### Rust 的挑战:攀登学习高峰与编译器的较量 -1. 学习曲线:Rust 的生命周期、所有权和借用等概念,对于初学者来说,可能是一道难以逾越的门槛。然而,一旦掌握,这些概念将成为开发者手中的强大工具。 -2. 编译器斗争:尽管 Rust 编译器提供了丰富的错误诊断信息,但在与借用检查器的较量中,开发者仍需付出大量的时间和精力。这也是 Rust 编程的一大考验。 +| Ferris | 含义 | +| ------------------------------------------------------------ | ---------------------------- | +| | 这段代码无法编译! | +| | 这段代码会引发恐慌! | +| | 这个代码块包含不安全代码。 | +| | 这段代码没有产生期望的行为。 | -### 《Effective Rust》的启示:实战的蓝图与 Rust 生态的探索 -1. 实战蓝图:《Effective Rust》一书如同一位经验丰富的向导,提供了许多关于 Rust 编程的实战技巧,这些技巧将帮助开发者更好地应对编程中的各种挑战。 -2. Rust 生态探索:书中还介绍了 Rust 的包生态系统和工具链,这将有助于开发者更好地利用社区资源,提升开发效率。 +## 致谢 -# 结论 +我的感谢送给: -《Effective Rust》的问世,不仅为 Rust 爱好者带来了一场知识的盛宴,也为广大开发者提供了一把开启 Rust 编程之门的钥匙。 +* Tiziano Santoro,我从他那里最初学到了许多关于 Rust 的知识。 +* Julian Rosse,他在在线文本中发现了数十个拼写错误和其他错误。 +* Martin Disch,他指出了几个条目中的潜在改进和不准确之处。 +* Chris Fleetwood、Sergey Kaunov、Clifford Matthews、Remo Senekowitsch、Kirill Zaborsky 以及一位匿名 ProtonMail 用户,他们指出了文本中的错误。 -Rust 以其安全性和类型系统,在编程语言的世界中独领风骚。虽然面临学习曲线和编译器斗争等挑战,但 Rust 的优势使其成为值得每一位开发者投入时间和精力的语言。 +原文[点这里](https://www.lurklurk.org/effective-rust/intro.html)查看 -通过持续翻译分享《Effective Rust》,我们将一起深入 Rust 的世界,掌握 Rust 编程的精髓,为未来的软件开发铺就一条坚实的道路。 +[Rust 书]: https://doc.rust-lang.org/stable/book/ch00-00-introduction.html#ferris \ No newline at end of file diff --git a/src/intro_zh.md b/src/intro_zh.md new file mode 100644 index 0000000..cc498df --- /dev/null +++ b/src/intro_zh.md @@ -0,0 +1,45 @@ +# 译著 + +> [原文链接](https://www.lurklurk.org/effective-rust/intro.html) + +> “代码更像是指南,而不是实际的规则。” —— Hector Barbossa + +在编程语言的江湖中,Rust 如同一颗新星,以其独树一帜的安全特性和严谨的类型系统,赢得了开发者的青睐。 + +近日,一本备受瞩目的新书《Effective Rust》横空出世,它不仅为我们揭示了 Rust 编程的深层智慧,还提供了实用的实战技巧。 + +本文将从这本书的精彩引言出发,带你领略 Rust 的优势与挑战,并预告将持续翻译分享,为读者带来 Rust 编程的全面解析。 + +# 《Effective Rust》引言简述 + +### 全书由六个部分组成: + +1. **类型**:围绕Rust核心类型系统的建议。 +2. **概念**:构成Rust设计核心思想的建议。 +3. **依赖关系**:关于使用Rust包生态系统的建议。 +4. **工具**:关于如何通过超越Rust编译器来改进代码库的建议。 +5. **异步Rust**:关于使用Rust异步机制的建议。 +6. **超越标准Rust**:关于在超出Rust标准、安全环境时,如何工作的建议。 + +> 尽管“概念”部分可以说是比“类型”部分更基础,但它故意排在第二位,以便从开始到结束阅读的读者可以首先建立一些信心。 + +### Rust 的优势:安全的护城河与强大的类型系统 + +1. 安全性:Rust 在类型安全和内存安全方面的卓越表现,使其在编译阶段就能抵御大量潜在的错误。这与 C++ 等语言相比,无疑是 Rust 的一大亮点。 +2. 类型系统:Rust 的类型系统不仅强大,而且一致,这让 Rust 程序在编译时就能捕捉到更多的错误。一个能够顺利编译的 Rust 程序,往往已经具备了较高的稳定性。 + +### Rust 的挑战:攀登学习高峰与编译器的较量 +1. 学习曲线:Rust 的生命周期、所有权和借用等概念,对于初学者来说,可能是一道难以逾越的门槛。然而,一旦掌握,这些概念将成为开发者手中的强大工具。 +2. 编译器斗争:尽管 Rust 编译器提供了丰富的错误诊断信息,但在与借用检查器的较量中,开发者仍需付出大量的时间和精力。这也是 Rust 编程的一大考验。 + +### 《Effective Rust》的启示:实战的蓝图与 Rust 生态的探索 +1. 实战蓝图:《Effective Rust》一书如同一位经验丰富的向导,提供了许多关于 Rust 编程的实战技巧,这些技巧将帮助开发者更好地应对编程中的各种挑战。 +2. Rust 生态探索:书中还介绍了 Rust 的包生态系统和工具链,这将有助于开发者更好地利用社区资源,提升开发效率。 + +# 结论 + +《Effective Rust》的问世,不仅为 Rust 爱好者带来了一场知识的盛宴,也为广大开发者提供了一把开启 Rust 编程之门的钥匙。 + +Rust 以其安全性和类型系统,在编程语言的世界中独领风骚。虽然面临学习曲线和编译器斗争等挑战,但 Rust 的优势使其成为值得每一位开发者投入时间和精力的语言。 + +通过持续翻译分享《Effective Rust》,我们将一起深入 Rust 的世界,掌握 Rust 编程的精髓,为未来的软件开发铺就一条坚实的道路。