Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

English Original

面向 Python 程序员的 Rust 完整培训指南 🟢

这是一本面向 Python 开发者的 Rust 学习指南,涵盖从基础语法到高级模式的内容,重点讲解从动态类型、垃圾回收语言迁移到具备编译期内存安全保证的静态类型系统语言时所需要的思维转变。

如何使用本书

自学建议:先学习第一部分(第 1-6 章),这些内容与 Python 中已有概念最接近。第二部分(第 7-12 章)会引入 Rust 特有概念,如所有权和 trait。第三部分(第 13-16 章)讨论高级主题与迁移问题。

学习节奏建议:

章节主题建议时间检查点
1-4环境、类型、控制流1 天你可以用 Rust 写出命令行温度转换器
5-6数据结构、枚举、模式匹配1-2 天你可以定义携带数据的枚举并用 match 完整匹配
7所有权与借用1-2 天你可以解释为什么 let s2 = s1 会使 s1 失效
8-9模块、错误处理1 天你可以创建一个多文件项目并用 ? 传播错误
10-12Trait、泛型、闭包、迭代器1-2 天你可以把列表推导式翻译成迭代器链
13并发1 天你可以用 Arc<Mutex<T>> 写出线程安全计数器
14Unsafe、PyO3、测试1 天你可以通过 PyO3 从 Python 调用 Rust 函数
15-16迁移、最佳实践自定节奏作为参考材料,在实际开发时按需查阅
17综合项目2-3 天构建一个整合各章节内容的完整命令行应用

如何使用练习:

  • 各章包含可折叠 <details> 区块中的动手练习及答案
  • 总是先尝试练习,再展开答案。 与借用检查器斗争本身就是学习过程,编译器的报错就是老师
  • 如果卡住超过 15 分钟,就展开答案学习,然后收起并重新独立完成一次
  • Rust Playground 允许你在未本地安装 Rust 的情况下运行代码

难度标记:

  • 🟢 初级:可以直接从 Python 概念迁移
  • 🟡 中级:需要理解所有权或 trait
  • 🔶 高级:生命周期、async 内部机制或 unsafe 代码

遇到卡点时:

  • 仔细阅读编译器错误信息,Rust 的错误提示通常非常有帮助
  • 重读相关小节,像所有权这样的概念往往第二遍才真正理解
  • Rust 标准库文档 非常优秀,遇到类型或方法都值得去查
  • 如需更深入的异步内容,请参考配套的 Async Rust Training

目录

第一部分:基础

1. 引言与动机 🟢

2. 快速开始 🟢

3. 内建类型与变量 🟢

4. 控制流 🟢

5. 数据结构与集合 🟢

6. 枚举与模式匹配 🟡

第二部分:核心概念

7. 所有权与借用 🟡

8. Crate 与模块 🟢

9. 错误处理 🟡

10. Trait 与泛型 🟡

11. FromInto Trait 🟡

12. 闭包与迭代器 🟡

第三部分:高级主题与迁移

13. 并发 🔶

14. Unsafe Rust、FFI 与测试 🔶

15. 迁移模式 🟡

16. 最佳实践 🟡


第四部分:综合项目

17. 综合项目:命令行任务管理器 🔶