《Rust编程之道》以其独特的视角和深入浅出的解释,成为了Rust学习者和编程爱好者的宝贵资源,书中不仅详细介绍了Rust的语法规则和特性,还深入探讨了内存安全、并发编程等核心概念,使读者能够在实践中避免常见的编程陷阱,通过丰富的示例代码和实战项目,作者引领读者逐步深入Rust编程世界,无论是新手还是有经验的开发者,都能从中获得启发和成长,这本书不仅仅是一本技术手册,更是开发者在Rust编程旅程中的良师益友。
√ Rust,集安全性、性能、效率高、高易读性于一身,是开发设计一款出色商品迫不得已考虑到的编程语言,学习培训Rust刻不容缓!
√ 这书创作者做为Rust语言的初期践行者,及其我国小区的管理方法经营者,对Rust的设计构思有深层次了解,并有丰富多彩的社会经验。
√ 从设计方案社会学、源码剖析、工程项目角度、最底层原理好几个层面,对Rust语言开展专业化整理,协助用户弄清专业知识多元性,减少学习。
√ 这书附带随书源码,配套设施运作,便捷用户结合实际夯实基础基础知识,了解Rust在生产过程中的运用,防止舍本逐末的难堪。
Rust 是一门运用智能化的种类系统软件,有机化学地结合了内存管理、使用权词义和混和编程范式的编程语言。它不但能科学研究地确保程序流程的准确性,还能确保运行内存安全性和线程安全。另外,也有能与C/C 语言媲美的特性,及其能和日常动态语言媲美的开发设计高效率。这书并不是对英语的语法內容开展简易列举解读,只是从四个层面深层次全方位且透亮地详细介绍了Rust 语言。从设计方案社会学来看,探索Rust 语言的本质一致性;从源码剖析下手,探索Rust 正宗的编程设计风格;从工程项目视角下手,探索Rust 对可扩展性的适配;从最底层原理刚开始,探索Rust 运行内存安全性的实质。这书包含了Rust 2018 的特点,合适有一定编程工作经验且要想学习培训Rust 的新手,及其对Rust 有一定的掌握,要想再次加强学习的升阶者。
目录
- 第1 章 新时代的语言 .................................................................................................. 1
- 1.1 缘起 ........................................................................................................................... 1
- 1.2 设计哲学 ................................................................................................................... 3
- 1.2.1 内存安全....................................................................................................... 3
- 1.2.2 零成本抽象 ................................................................................................... 4
- 1.2.3 实用性 .......................................................................................................... 5
- 1.3 现状与未来 ............................................................................................................... 7
- 1.3.1 语言架构....................................................................................................... 8
- 1.3.2 开源社区....................................................................................................... 9
- 1.3.3 发展前景....................................................................................................... 9
- 1.4 Rust 代码如何执行 ................................................................................................ 10
- 1.5 小结 ......................................................................................................................... 10
- 第2 章 语言精要 ........................................................................................................ 11
- 2.1 Rust 语言的基本构成 ............................................................................................. 11
- 2.1.1 语言规范..................................................................................................... 11
- 2.1.2 编译器 ........................................................................................................ 12
- 2.1.3 核心库 ........................................................................................................ 12
- 2.1.4 标准库 ........................................................................................................ 12
- 2.1.5 包管理器..................................................................................................... 13
- 2.2 语句与表达式 ......................................................................................................... 13
- 2.3 变量与绑定 ............................................................................................................. 14
- 2.3.1 位置表达式和值表达式 ............................................................................. 15
- 2.3.2 不可变绑定与可变绑定 ............................................................................. 15
- 2.3.3 所有权与引用 ............................................................................................. 16
- 2.4 函数与闭包 ............................................................................................................. 17
- 2.4.1 函数定义..................................................................................................... 17
- 2.4.2 作用域与生命周期 ..................................................................................... 18
- 2.4.3 函数指针..................................................................................................... 19
- 2.4.5 CTFE 机制 .................................................................................................. 20
- 2.4.6 闭包 ............................................................................................................ 20
- 2.5 流程控制 ................................................................................................................. 22
- 2.5.1 条件表达式 ................................................................................................. 22
- 2.5.2 循环表达式 ................................................................................................. 23
- 2.5.3 match 表达式与模式匹配 .......................................................................... 24
- 2.5.4 if let 和while let 表达式 ............................................................................ 25
- 2.6 基本数据类型 ......................................................................................................... 26
- 2.6.1 布尔类型..................................................................................................... 26
- 2.6.2 基本数字类型 ............................................................................................. 26
- 2.6.3 字符类型..................................................................................................... 27
- 2.6.4 数组类型..................................................................................................... 28
- 2.6.5 范围类型..................................................................................................... 29
- 2.6.6 切片类型..................................................................................................... 29
- 2.6.7 str 字符串类型 ............................................................................................ 30
- 2.6.8 原生指针..................................................................................................... 31
- 2.6.9 never 类型 ................................................................................................... 31
- 2.7 复合数据类型 ......................................................................................................... 32
- 2.7.1 元组 ............................................................................................................ 32
- 2.7.2 结构体 ........................................................................................................ 33
- 2.7.3 枚举体 ........................................................................................................ 36
- 2.8 常用集合类型 ......................................................................................................... 38
- 2.8.1 线性序列:向量 ......................................................................................... 38
- 2.8.2 线性序列:双端队列 ................................................................................. 39
- 2.8.3 线性序列:链表 ......................................................................................... 40
- 2.8.4 Key-Value 映射表:HashMap 和BTreeMap ............................................ 40
- 2.8.5 集合:HashSet 和BTreeSet ...................................................................... 41
- 2.8.6 优先队列:BinaryHeap ............................................................................. 42
- 2.9 智能指针 ................................................................................................................. 42
- 2.10 泛型和trait ........................................................................................................... 43
- 2.10.1 泛型 .......................................................................................................... 43
- 2.10.2 trait ............................................................................................................ 44
- 2.11 错误处理 ............................................................................................................... 47
- 2.12 表达式优先级 ....................................................................................................... 48
- 2.13 注释与打印 ........................................................................................................... 48
- 2.14 小结 ....................................................................................................................... 50
- 第3 章 类型系统 ............................................................................................