面向 C# 程序员的 Rust 培训指南
这是一本面向具有 C# 背景开发者的 Rust 学习指南,覆盖从基础语法到高级模式的完整内容,重点讲解两门语言在思维方式和实际用法上的差异。
课程概览
- 为什么选择 Rust:Rust 为什么值得 C# 开发者学习,重点在性能、安全与正确性。
- 快速开始:安装、工具链与第一个程序。
- 基础构件:类型、变量、控制流。
- 数据结构:数组、元组、结构体、集合。
- 模式匹配与枚举:代数数据类型与穷尽匹配。
- 所有权与借用:Rust 的内存管理模型。
- 模块与 crate:代码组织与依赖管理。
- 错误处理:基于
Result的错误传播。 - Trait 与泛型:Rust 类型系统。
- 闭包与迭代器:函数式编程模式。
- 并发:由类型系统保证的无畏并发,以及 async/await 深入解析。
- Unsafe Rust 与 FFI:何时以及如何超越安全 Rust。
- 迁移模式:真实世界中的 C# 到 Rust 模式与渐进迁移。
- 最佳实践:适合 C# 开发者的 Rust 惯用法。
自学指南
本材料既适合讲师授课,也适合自学。如果你打算自行学习,下面的建议能帮助你更高效地使用这套内容。
学习节奏建议
| 章节 | 主题 | 建议时间 | 检查点 |
|---|---|---|---|
| 1-4 | 环境配置、类型、控制流 | 1 天 | 你可以用 Rust 写一个命令行温度转换器 |
| 5-6 | 数据结构、枚举、模式匹配 | 1-2 天 | 你可以定义携带数据的枚举并用 match 进行穷尽匹配 |
| 7 | 所有权与借用 | 1-2 天 | 你可以解释为什么 let s2 = s1 会使 s1 失效 |
| 8-9 | 模块、错误处理 | 1 天 | 你可以创建一个多文件项目并用 ? 传播错误 |
| 10-12 | Trait、泛型、迭代器 | 1-2 天 | 你可以把一段 LINQ 链改写成 Rust 迭代器 |