面向 C/C++ 程序员的 Rust 入门强化课程 🟢
欢迎参加 Rust 入门强化课程。本课程专为具备 C/C++ 背景、希望利用其系统编程经验的高级开发者设计,旨在帮助你拥抱 Rust 的安全特性与现代功能。
课程概览
- 为什么选择 Rust:C/C++ 开发者为何需要 Rust 以及它能消除哪些常见问题。
- 基础知识:类型、函数、控制流以及模式匹配。
- 工具链:模块、Cargo 以及工作空间(Workspaces)。
- 抽象能力:Trait、泛型以及闭包。
- 内存与并发:生命周期、智能指针以及线程安全。
- 系统与 FFI:Unsafe Rust、外部函数接口(FFI)以及
no_std。 - 案例研究:将 C++ 代码迁移到 Rust 的真实架构设计模式。
Note
本课程 不 涉及
asyncRust。如需深入学习 Future、执行器(Executors)以及tokio,请参阅配套的 Async Rust Training。
自学指南
| 阶段 | 主题 | 建议时长 | 检查点 |
|---|---|---|---|
| 1 | 环境搭建、类型、控制流 | 1 天 | 构建一个命令行计算器。 |
| 2 | 数据结构、所有权 | 1-2 天 | 理解为何 let s2 = s1 会移动 s1。 |
| 3 | 模块、错误处理 | 1 天 | 使用 ? 操作符传播错误。 |
| 4 | Trait、泛型、闭包 | 1-2 天 | 编写带有 Trait 约束的泛型函数。 |
| 5 | 并发、Unsafe/FFI | 1 天 | 创建一个线程安全的计数器。 |
如何使用练习
每章都包含带难度标记的动手练习:
- 🟢 入门 (Starter)
- 🟡 中级 (Intermediate)
- 🔶 挑战 (Challenge)
提示:务必先独立尝试练习至少 15 分钟。与借用检查器(Borrow Checker)的“博弈”就是实际学习发生的地方。如果卡住了,请研究参考答案,然后尝试从头开始重写。