Rust 2024 Edition

Rust 系统编程

掌握内存安全、零成本抽象与极致性能——
用所有权系统重新思考程序设计

内存安全,无 GC
零成本抽象
无畏并发
编译期保证
10 核心章节
2024 最新 Edition
StackOverflow 最喜爱

为什么学 Rust?

Rust 诞生于 2010 年,由 Mozilla 工程师 Graydon Hoare 创建,旨在解决系统编程中长期存在的内存安全问题。传统的 C/C++ 给予程序员极大的控制权,但也因此容易出现缓冲区溢出、悬垂指针、数据竞争等安全漏洞——这些问题占据了 CVE 安全漏洞数据库中约 70% 的条目。

Rust 的创新在于:它通过所有权系统(Ownership System)在编译期就排除了这类错误,而不是依赖垃圾回收器在运行时消耗额外资源。这意味着你同时获得了 C 级别的性能和现代语言的安全保障——这在软件工程史上是首次。

如今,Rust 被用于 Linux 内核驱动、Android 系统组件、Windows 11 核心代码、Firefox 浏览器引擎、Cloudflare 网络基础设施、Discord 后端服务,以及 WebAssembly 生态系统。

核心特性

Rust 重新定义了系统编程的可能性边界

🔒

内存安全

所有权系统在编译期防止空指针、悬垂指针、缓冲区溢出,无需 GC。

零成本抽象

高级语言特性(迭代器、闭包、泛型)编译后与手写 C 代码性能相当。

🧵

无畏并发

借用检查器在编译期防止数据竞争,让多线程编程更加安全可信。

🦀

表达力强

代数类型系统、模式匹配、Trait 系统,让代码既安全又优雅。

📦

Cargo 生态

世界一流的包管理器,crates.io 拥有超过 15 万个高质量 crate。

🌐

跨平台

支持从嵌入式微控制器到 WebAssembly 的广泛编译目标。

课程目录

系统性掌握 Rust,从入门到实战

Chapter 01

Rust 简介与开发环境

Rust 诞生背景、内存安全承诺、与 C/C++/Go 对比、rustup 安装、Cargo 项目结构、rustfmt 与 clippy。

rustup cargo 工具链
Chapter 02

基础语法:变量与类型系统

不可变变量、类型推断、标量类型、复合类型(tuple/array)、类型转换、shadowing 机制。

let 类型推断 shadowing
Chapter 03

所有权系统深度解析

所有权三规则、move 语义、Clone vs Copy、栈与堆的本质区别、内存布局可视化。

ownership move 内存安全
Chapter 04

借用与生命周期

& 引用与借用规则、可变借用、借用检查器原理、生命周期标注、'static 生命周期。

borrow lifetime 'static
Chapter 05

结构体、枚举与模式匹配

struct 定义与方法、impl 块、enum 与 Option/Result、match 穷举、if let / while let。

struct enum match
Chapter 06

错误处理哲学

panic! 与不可恢复错误、Result<T,E>、? 运算符传播、自定义错误类型、thiserror/anyhow。

Result ?运算符 错误传播
Chapter 07

泛型、Trait 与多态

泛型函数与结构体、Trait 定义与实现、Trait 对象(dyn Trait)、常用标准 Trait。

generics trait 多态
Chapter 08

并发编程:线程与 async/await

thread::spawn、Arc<Mutex>、消息通道、async fn 原理、tokio 运行时、异步网络请求。

thread async tokio
Chapter 09

实用工具开发

命令行参数 clap、文件 I/O、序列化 serde + JSON、正则表达式、构建 CLI 工具实战。

clap serde CLI
Chapter 10

WebAssembly:Rust 编译到浏览器

wasm-pack 介绍、wasm-bindgen、在浏览器中调用 Rust 函数、性能对比、实战案例。

wasm-pack wasm-bindgen 浏览器