为什么是 Rust,为什么是 2026:第一次编译前的地图
Rust 从入门到精通系列第 1 篇:Rust 凭什么赢下了系统编程的十年、2026 年它到底跑在哪里、一段话讲完所有权、诚实的学习曲线,以及写第一行代码前需要的工具链。
固定大纲的 Rust 系列:所有权与借用、生命周期与类型系统、Cargo 工程化、并发与异步、unsafe 与宏、性能工程与生态选型——从第一个程序写到像 Rustacean 一样思考。
Rust 从入门到精通系列第 1 篇:Rust 凭什么赢下了系统编程的十年、2026 年它到底跑在哪里、一段话讲完所有权、诚实的学习曲线,以及写第一行代码前需要的工具链。
Rust 从入门到精通系列第 2 篇:move 语义与为什么赋值不是拷贝、读者与写者二选一规则、非词法生命周期、2024 edition 和 Polonius 带来的变化,以及结束与借用检查器搏斗的那些模式。
Rust 从入门到精通系列第 3 篇:生命周期到底是什么、替你写标注的三条省略规则、必须动手标注的两个地方、'static 的两副面孔,以及 2024 edition 修掉的那些临时值作用域错误。
Rust 从入门到精通系列第 4 篇:会携带数据的 enum 如何让非法状态无法表示、match 的穷尽性检查如何把重构变成跟着编译器散步、Option 为什么是 null 的葬礼,以及 Result 和 ? 运算符怎样把错误处理从金字塔压成一条直线。
Rust 从入门到精通系列第 5 篇:trait 是什么、孤儿规则为什么保护你、没有继承的世界如何用组合组织代码、derive 一行能买到什么,以及 Debug、Display、From、Clone、Drop、Iterator 这六个你每天都会打交道的标准 trait。
Rust 从入门到精通系列第 6 篇:Box 为什么不是逃生舱而是递归类型的入场券、Rc 如何用计数共享所有权、RefCell 怎样把借用检查挪到运行期、Rc<RefCell<T>> 这个经典组合各自解决什么,以及每笔交易的价码与多线程亲戚。
Rust 从入门到精通系列第 7 篇:泛型与 trait bound 的完整语法、单态化为什么零成本、impl Trait 在参数与返回位置的不对称、静态分发与 dyn 的取舍,以及 2024 edition 用 + use<...> 修好的返回位置生命周期捕获。
Rust 从入门到精通系列第 8 篇:package 与 crate 的真实关系、mod 声明如何接线模块树、可见性阶梯与 E0603、workspace 的组织方式与共享构建缓存、feature flags 的加性规则,以及工作日每天都在用的 cargo 命令。
Rust 从入门到精通系列第 9 篇:Send 与 Sync 两个标记 trait 如何把「线程安全」变成类型层面的事实、scoped threads 如何合法借用栈上数据、Arc<Mutex<T>> 与第 6 篇 Rc<RefCell<T>> 的对应关系,以及 channel 背后「用通信共享内存」的所有权哲学。
Rust 从入门到精通系列第 10 篇:async fn 编译成的状态机、Future 为什么在被 poll 之前什么都不做、手写一个 Future 和一个迷你执行器、waker 的角色、tokio 解决了线程模型的哪个瓶颈,以及 CPU 密集选线程、I/O 密集选异步的选型准则。
Rust 从入门到精通系列第 11 篇:unsafe 不关闭借用检查器这个最反直觉的事实、恰好五项特权各自的用途、裸指针与引用的合同差异、安全抽象边界的画法与 SAFETY 注释惯例,以及为什么成熟的 Rustacean 写的 unsafe 越来越少。
Rust 从入门到精通系列第 12 篇:为什么 println! 只能是宏、macro_rules! 声明宏的模式匹配本质、卫生性如何隔离宏内变量、$crate 路径、过程宏三兄弟(derive/attribute/function-like)各自的领土与一个亲手实现的迷你 derive,以及「先学什么时候不用它」的判据阶梯。
Rust 从入门到精通系列第 13 篇:测量先行的唯一循环、微基准与 profiler 的分工、分配作为看不见的税、Vec 扩容阶梯的实测数字与 with_capacity、亲手验证迭代器零成本承诺的方法,以及热路径上的五条守则。
Rust 从入门到精通系列第 14 篇(收官):起手栈各领域的事实标准、thiserror 与 anyhow 的分界线实证、如何读一个 crate 的尽调五信号、十四篇的完整回望,以及一个 Rustacean 接下来的路。