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

面向 C/C++ 程序员的 Rust 入门强化课程 🟢

欢迎参加 Rust 入门强化课程。本课程专为具备 C/C++ 背景、希望利用其系统编程经验的高级开发者设计,旨在帮助你拥抱 Rust 的安全特性与现代功能。

课程概览

  • 为什么选择 Rust:C/C++ 开发者为何需要 Rust 以及它能消除哪些常见问题。
  • 基础知识:类型、函数、控制流以及模式匹配。
  • 工具链:模块、Cargo 以及工作空间(Workspaces)。
  • 抽象能力:Trait、泛型以及闭包。
  • 内存与并发:生命周期、智能指针以及线程安全。
  • 系统与 FFI:Unsafe Rust、外部函数接口(FFI)以及 no_std。
  • 案例研究:将 C++ 代码迁移到 Rust 的真实架构设计模式。

Note

本课程 不 涉及 async Rust。如需深入学习 Future、执行器(Executors)以及 tokio,请参阅配套的 Async Rust Training。


自学指南

阶段主题建议时长检查点
1环境搭建、类型、控制流1 天构建一个命令行计算器。
2数据结构、所有权1-2 天理解为何 let s2 = s1 会移动 s1。
3模块、错误处理1 天使用 ? 操作符传播错误。
4Trait、泛型、闭包1-2 天编写带有 Trait 约束的泛型函数。
5并发、Unsafe/FFI1 天创建一个线程安全的计数器。

如何使用练习

每章都包含带难度标记的动手练习:

  • 🟢 入门 (Starter)
  • 🟡 中级 (Intermediate)
  • 🔶 挑战 (Challenge)

提示:务必先独立尝试练习至少 15 分钟。与借用检查器(Borrow Checker)的“博弈”就是实际学习发生的地方。如果卡住了,请研究参考答案,然后尝试从头开始重写。


目录

第一部分 — 基础篇

1. 引言与动机

2. 快速开始

3. 基础类型与变量

4. 控制流

5. 数据结构与集合

6. 模式匹配与枚举

7. 所有权与内存管理

8. 模块与 Crate

9. 错误处理

10. Trait 与泛型

11. 类型系统高级特性

12. 函数式编程

13. 并发编程

14. Unsafe Rust 与 FFI

第二部分 — 专题深入

15. no_std — 裸机环境下的 Rust

16. 案例研究:真实的 C++ 到 Rust 迁移

第三部分 — 最佳实践与参考

17. 最佳实践

18. C++ → Rust 语义深挖

19. Rust 宏