




资源介绍
视频数量:51个
总时长:7小时4分
课程介绍:
Rust 编程入门:基础与核心概念实战
你有没有过这样的经历?写了一段代码,编译通过,运行也正常,但心里总有点不踏实——这个变量到底归谁管?这块内存什么时候释放?多线程跑起来会不会出乱子?如果你用 C 或 C++,这些问题可能让你调试到深夜;如果你用 Java 或 Python,垃圾回收机制帮你兜了底,但你从来没真正搞清楚底层发生了什么。
Rust 这门语言,就是冲着这些问题来的。它不用垃圾回收,却能保证内存安全;它的并发模型天然防住数据竞争;它的编译器像个严厉但靠谱的老师,代码有隐患就直接拒绝编译。很多人听说 Rust 难学,其实难的不是语法,而是它的核心思想——所有权与借用系统。一旦理解了这套机制,你会发现自己写代码的习惯都会被改变。
这门课程就是帮你跨过那道坎的入口。
一、认识 Rust 与开发环境搭建:
万事开头难,但开头的路有人带就不难。第一课会先带你认识 Rust 这门语言的整体面貌——它为什么被设计出来?适合做什么?和 C++、Go 这些系统级语言相比,Rust 的独特之处在哪?搞清楚这些背景,你学起来会更有方向感。
接下来是动手环节。你会亲手写下第一个 Rust 程序,看到那个经典的 "Hello, world!" 在终端里跑起来。然后课程会教你手动编译和运行这个程序,让你理解背后发生了什么。最后,Cargo 这个 Rust 的包管理工具会登场——以后你写的每个项目都会用到它。从创建项目到构建运行,用 Cargo 一条命令搞定,省心省力。
二、变量与数据类型的细节:
任何编程语言都离不开变量和数据类型,但 Rust 在这块有很多值得细究的地方。第二课会带你逐一认识 Rust 的基本类型:整数类型有多种长度可选(i8、i32、u64 等等),浮点数有 f32 和 f64,布尔值和字符类型也有自己的规则。你可能会问,为什么整数要分这么多种?这是因为在系统编程里,内存和性能是实打实的问题,选对类型很重要。
课程不会只停留在告诉你有哪些类型,还会讲一些实用的技巧。比如类型推断——很多时候你不用写类型标注,编译器自己能猜出来;比如一次声明多个变量的写法;比如类型转换的方法。这些细节看似琐碎,但真正写项目时会频繁遇到,提前搞清楚能省掉很多麻烦。
三、流程控制:
if 语句、循环、break、continue——听起来是不是很熟悉?但 Rust 在这些常见结构上有自己的设计哲学。第三课会从最简单的 if 表达式开始讲起,注意,在 Rust 里 if 是表达式不是语句,这意味着它能返回值,用法更灵活。
然后是 match 模式匹配。它和别的语言的 switch 类似,但功能强大得多——你可以匹配枚举的变体、匹配范围、匹配多个条件,还能绑定值。学完这一节,你会发现 Rust 的模式匹配是个非常好用的工具。
循环部分会讲到 loop、while 和 for 三种循环方式,以及 break 和 continue 的用法。课程特别提到,Rust 的循环里有些细节可能让你意外,比如 loop 表达式也能返回值。搞清楚这些差异,写代码时会顺手很多。
四、枚举与 Rust 的错误处理哲学:
枚举(enum)在很多语言里只是个不起眼的小功能,但在 Rust 里它是核心武器。第四课会先讲最基础的简单枚举定义和使用,包括怎么避免编译器对未使用变体的警告。
重点来了——带数据的枚举。Rust 的枚举变体可以挂载任意类型的数据,这让它能表达非常复杂的业务逻辑。比如一个表示网络消息的枚举,不同的消息类型携带不同的数据结构,用 Rust 的枚举写出来既清晰又安全。
然后是两个超级重要的枚举:Option 和 Result。Option 用来表达"可能有值也可能没有",Result 用来表达"操作可能成功也可能失败"。你会看到 Rust 是怎么用类型系统把空指针异常这类问题消灭在编译阶段的——这就是 Rust 不用 null 却一样能处理"空值"场景的奥秘。
五、复合类型与集合:
写程序离不开存放一组数据。第五课会带你认识 Rust 的四种主要集合类型。
数组是固定长度的,存放在栈上,访问速度快。课程会教你创建数组的多种方式,以及一些数组操作技巧,比如迭代、搜索等。元组则可以把不同类型的值打包在一起,适合临时组合一些数据。
向量(Vec)是动态数组,长度可变,是日常开发中最常用的集合之一。你会学到怎么创建、增删元素、遍历向量。哈希映射(HashMap)则适合存储键值对关联数据,比如统计单词出现次数、缓存查询结果等。这四种集合各有适用场景,课程会帮你分清楚什么时候该用哪个。
六、所有权——Rust 最核心的概念:
如果你只学一个 Rust 概念,那一定是所有权(Ownership)。第六课花了大篇幅讲这个主题,因为它太重要了。
课程先从作用域讲起——变量在什么范围内有效,什么时候被销毁。Rust 没有垃圾回收,它靠的就是这套严格的作用域规则来管理内存。静态局部变量、全局静态变量、可变静态变量,这些概念一个一个拆开来讲清楚。
字符串是 Rust 里特别值得注意的部分,因为它的字符串类型不止一种——&str 是字符串切片,String 是可增长的字符串。两种类型有完全不同的内存布局和使用场景。课程会用两节内容专门讲字符串的细节,包括什么时候用哪种、怎么在它们之间转换。
最后讲的是所有权转移的核心:复制(Copy)与移动(Move)。简单类型会复制,复杂类型赋值时会移动原来的值就失效了。克隆(Clone)则是显式复制的方式。这一节搞懂了,你就理解了 Rust 内存安全的底层逻辑。
七、借用与引用——所有权的延伸:
所有权规则很严格,但实际开发中经常需要"借用"数据而不是拥有它。第七课讲的就是借用(Borrowing)。
你会学到不可变引用和可变引用的区别,以及 Rust 的借用检查器(Borrow Checker)是怎么工作的。借用检查器是 Rust 编译器里的大功臣,它会在编译期就发现你代码里的数据竞争和悬垂引用问题。很多人一开始会和借用检查器"吵架",但一旦理解了它的规则,写代码时就会自然而然地写出符合规则的安全代码。
字符串切片和数组切片是借用的高级形式。字符串切片让你引用字符串的一部分而不需要复制数据,数组切片同理。这些技巧在处理文本和序列化数据时非常有用。课程会用两节内容分别讲切片的基础概念和实用技巧。
学完这门课你会收获什么?
七个小时,五十一节课,覆盖了 Rust 编程最核心的基础知识。从环境搭建到变量类型,从流程控制到枚举设计模式,从集合操作到所有权与借用——学完这些,你就具备了独立阅读和编写中等复杂度 Rust 程序的能力。
更重要的是,你会建立起 Rust 式的编程思维:思考数据的所有权关系,设计合理的借用结构,让编译器帮你守住安全底线。这套思维不仅适用于 Rust,也会反过来影响你用其他语言写代码的方式。
课程适合有一定编程基础的人——不管是学过 C、C++、Java、Python 还是 Go,只要你理解基本的变量、函数、循环概念,就能跟上节奏。如果你是完全零基础,可能需要先补一补编程入门知识再来会更顺畅。
Rust 这门语言正在被越来越多的公司采用,从系统工具到 WebAssembly,从区块链到嵌入式开发,到处都有它的身影。趁现在打好基础,后面不管是深入学异步编程、宏,还是上手做实际项目,都会轻松很多。