Rust 是一门极具挑战性但也极具回报的语言。它连续多年被 Stack Overflow 评为“最受喜爱的编程语言”,因为它在提供内存安全的同时,不损失性能。
📚 Rust 深度学习路线图 (总纲)
- 第一章:环境搭建与 Hello World(起步)
- 第二章:通用编程概念(变量、数据类型、函数、控制流)
- 第三章:所有权(Ownership)与借用(Rust 的核心灵魂)
- 第四章:结构体、枚举与模式匹配
- 第五章:包、Crate 与模块系统
- 第六章:常见集合(Vector, String, HashMap)
- 第七章:错误处理(Panic vs Result)
- 第八章:泛型、Trait 与生命周期(进阶难点)
- 第九章:自动化测试与闭包、迭代器
- 第十章:智能指针与并发编程
🚀 第一章:环境搭建与 Hello World
在这一章,我们的目标是让你的电脑可以运行 Rust 代码,并理解 Rust 项目的基本结构。
1.1 安装 Rust
Rust 官方提供了一个非常棒的安装工具叫 rustup。它可以管理 Rust 的版本和相关工具链。
-
macOS / Linux 用户: 打开终端(Terminal),输入以下命令:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh安装完成后,关闭并重新打开终端,输入
rustc --version,如果看到类似rustc 1.7x.0 ...的输出,说明安装成功。 -
Windows 用户:
- 访问 rustup.rs/ 下载
rustup-init.exe。 - 重要:Rust 需要 C++ 构建工具。如果你安装过 Visual Studio (带 C++ 环境),可以直接安装。如果没有,安装程序会提示你安装 "Visual Studio Build Tools",请务必勾选 C++ 相关组件。
- 访问 rustup.rs/ 下载
1.2 配置开发环境 (IDE)
工欲善其事,必先利其器。Rust 不推荐用记事本写。
- 下载 VS Code (Visual Studio Code)。
- 安装插件:在 VS Code 扩展商店搜索并安装
rust-analyzer。- 注意:不要安装旧版的 "Rust" 插件,rust-analyzer 是目前官方推荐的,智能提示非常强大。
- (可选) 安装
Even Better TOML插件,用于高亮显示配置文件。
1.3 认识 Cargo:Rust 的大管家
在其他语言(如 C/C++)中,你可能需要自己调用编译器(如 gcc)。但在 Rust 中,我们几乎总是使用 Cargo。 Cargo 是 Rust 的构建系统和包管理器。它可以帮你:
- 创建项目
- 下载依赖库
- 编译代码
- 运行代码
1.4 创建你的第一个项目
打开终端,进入你想存放代码的目录,运行:
cargo new hello_rust
这会创建一个名为 hello_rust 的文件夹。让我们看看里面的结构:
hello_rust/
├── Cargo.toml <-- 项目的配置文件(类似 Node.js 的 package.json)
└── src/
└── main.rs <-- 源代码文件
详细解读 Cargo.toml:
打开这个文件,你会看到:
[package]
name = "hello_rust"
version = "0.1.0"
edition = "2021"
[dependencies]
# 这里以后用来添加第三方库
详细解读 src/main.rs:
fn main() {
println!("Hello, world!");
}
fn: 这是一个关键字,用于声明函数。main: 这是程序的入口点。程序从这里开始执行。println!: 注意结尾的!。- 在 Rust 中,如果调用的是函数,是
println()。 - 如果是
!,说明这是一个 宏 (Macro)。目前你只需要记住:宏可以接受可变数量的参数,通常比普通函数更强大。
- 在 Rust 中,如果调用的是函数,是
;: 语句以分号结尾。
1.5 运行项目
在终端中进入项目目录:
cd hello_rust
这里有三个常用的 Cargo 命令,请务必背下来:
-
cargo check- 作用:快速检查代码是否有语法错误,但不进行编译生成可执行文件。
- 场景:写代码时频繁使用,因为它速度最快。
- 练习:试着把
println!拼错成printl!,然后运行cargo check,看看报错信息。Rust 的报错信息非常友好且详细。
-
cargo build- 作用:编译代码,生成可执行文件。
- 位置:生成的文件在
target/debug/hello_rust。 - 场景:当你需要生成程序时使用。
-
cargo run- 作用:编译 并 立即运行。
- 场景:开发过程中最常用的命令。
动手试试: 在终端输入:
cargo run
你应该会看到:
Compiling hello_rust v0.1.0 (...)
Finished dev [unoptimized + debuginfo] target(s) in 0.xxs
Running `target/debug/hello_rust`
Hello, world!
1.6 稍微加点料:引入依赖
为了感受 Rust 强大的生态,我们要修改代码,让它打印出漂亮的彩色文字。我们需要引入一个第三方库(在 Rust 中叫 Crate)。
第一步:添加依赖
打开 Cargo.toml,在 [dependencies] 下面添加 colored 库:
[dependencies]
colored = "2.0"
第二步:修改代码
打开 src/main.rs,修改为以下内容:
// 引入 colored crate 中的所有内容
use colored::*;
fn main() {
// 这里的 .red() 和 .blue() 是 colored 库提供的方法
println!("{} {}", "Hello".red(), "Rust!".blue().bold());
let name = "World";
println!("Hello, {}!", name.green());
}
第三步:运行
再次输入 cargo run。
你会发现 Cargo 自动去下载了 colored 库及其依赖,编译完成后,你在终端会看到红色的 "Hello" 和蓝色的粗体 "Rust!"。
📝 第一章总结与作业
总结:
- Rust 使用
rustup安装和管理。 cargo是构建和包管理工具(new, check, build, run)。main函数是入口。println!是一个宏。Cargo.toml管理依赖。
作业(请务必完成):
- 使用
cargo new创建一个新项目,名字叫my_first_app。 - 修改
main.rs,使其输出三行文字,分别介绍你的名字、你为什么要学 Rust。 - 尝试运行
cargo run查看结果。 - 尝试在代码中故意漏掉一个分号
;,运行cargo check,阅读编译器的报错信息,并尝试理解它。