🦀
Rust
从所有权与借用到 trait、泛型、并发与异步,系统级语言渐进式精通。
- 01Rust 入门与环境搭建安装 rustup 与 cargo,写出第一个 Hello World,理解编辑-编译-运行流程与 cargo 项目结构
- 02变量与可变性理解 let、mut、类型推断、shadowing(遮蔽)与 const 常量,建立 Rust 默认不可变的心智模型
- 03基础数据类型标量类型(整型、浮点、布尔、字符)与复合类型(元组、数组)的声明、使用与边界
- 04函数与控制流fn 函数定义、if/else 表达式、loop/while/for 循环,以及用 match 做穷尽匹配
- 05所有权掌握 Rust 内存管理的三大规则、move 语义,以及栈与堆对所有权的影响
- 06借用与引用理解 & 引用、不可变借用与可变借用的规则,以及借用检查器如何保证内存安全
- 07切片字符串切片与数组切片,理解切片本质是对数据的借用,以及它们与引用的关系
- 08结构体定义与实例化结构体、字段可变性、为结构体实现方法(impl)与关联函数
- 09枚举与模式匹配定义枚举、理解 Option 消除空指针,并用 match 与 if let 做穷尽匹配
- 10模块与包管理mod/use 组织代码、路径与 crate 根、可见性 pub 规则,以及 workspace 多包结构
- 11常用集合类型Vec、String 与 HashMap 等标准集合的创建、增删查改,以及它们与所有权/借用的关系
- 12错误处理用 Result/Option 表达可恢复错误,区分 panic 与可恢复错误,掌握 unwrap/? 与自定义错误
- 13泛型泛型函数、结构体与枚举,单态化(monomorphization)原理,以及 trait bound 约束类型
- 14Trait定义与实现 trait、默认方法、trait 对象实现多态,以及 impl Trait 与 trait bound
- 15生命周期理解生命周期标注 'a、编译器省略规则,以及如何在返回引用时显式标注生命周期
- 16闭包闭包语法、Fn/FnMut/FnOnce 三个 trait,以及闭包如何捕获环境、与泛型配合
- 17迭代器Iterator trait、map/filter/collect 等适配器,以及惰性求值如何避免中间分配
- 18智能指针Box 堆分配、Rc 引用计数共享,以及 RefCell 提供的运行时借用检查
- 19线程用 std::thread::spawn 创建线程、move 闭包捕获环境,以及用 channel 做消息传递
- 20共享状态与并发用 Mutex 保护共享数据、Arc 实现线程间引用计数,理解 Send/Sync 与共享可变状态
- 21宏声明宏 macro_rules! 的写法、常用内置宏,以及过程宏(derive/属性/函数式)的简介
- 22异步编程async/await 与 Future 模型、tokio 运行时入门,以及异步与多线程的关系
- 23测试单元测试与集成测试的写法、#[test] 与断言宏,以及 cargo test 与文档测试
- 24常用派生 TraitDebug/Display/Clone/Copy/Default/From/Into 等标准 trait 的用途、对比与实现方式
- 25字符串深入String 与 &str 的本质区别、UTF-8 编码陷阱,以及拼接、切片与转换的常见坑
- 26文件与 IO用 std::fs 读写文件、BufReader/Writer 缓冲、以及 IO 错误与 Result 的配合
- 27serde 序列化用 serde 与 serde_json 在 Rust 结构体与 JSON 之间做序列化/反序列化实战
- 28项目实战:命令行工具用 clap 构建一个带子命令与参数的命令行工具,整合前面所学的结构体、错误处理与文件 IO
- 29项目实战:Web 服务用 axum 搭建一个带路由、JSON 序列化与共享状态的迷你 HTTP 服务,整合 trait、serde 与并发
- 30项目实战:并发文件处理综合运用线程、channel、Arc/Mutex 与迭代器,写一个并发统计多个文件行数的工具