Effective Rust:编写高质量Rust代码的35个有效方法
邝劲强 译
出版时间:2026年01月
页数:248
“这本书出色地汇集了超越基础知识的实战型Rust知识。书中的建议将助你成为自信且全面的Rust开发者。”
——Carol Nichols
The Rust Programming Language的合著者
“这本书深入剖析了我常向他人分享的各类项目优化建议,是助力你提升Rust编程能力的优质资源。”
——Pietro Albini
Rust核心团队前成员
Rust语言因其内存安全、类型安全以及线程安全等特性而日益流行。然而,正是这些特性,让学习Rust颇具挑战,即便是经验丰富的程序员也不例外。这本实用指南将助力你顺利过渡到编写地道的Rust代码,同时充分运用Rust的类型系统、安全保障以及蓬勃发展的生态系统。
如果你是一名具备现有编译型语言经验的软件工程师,或者你在将Rust语法的基础理解转化为实际可运行的程序时遇到了困难,那么这本书正是为你量身打造的。本书聚焦Rust与其他编译型语言之间的概念差异,并提供了程序员可轻松遵循的具体建议。通过学习本书,你将很快写出流畅的Rust代码,而非蹩脚的“C++翻译版”代码。
本书将帮助你:
● 理解Rust类型系统的结构。
● 学习Rust中处理错误、迭代等场景的地道用法。
● 探索如何运用Rust的crate生态系统。
● 运用Rust的类型系统来表达设计理念。
● 攻克borrow checker(借用检查器)的限制。
● 构建一个充分利用Rust工具生态系统的稳健项目。
- 前言
- 第1章 类型
- 第1条:使用类型系统表示数据结构
- 第2条:使用类型系统表达常见行为
- 第3条:优先选择Option和Result转换,而非显式match表达式
- 第4条:优先使用惯用的Error类型
- 第5条:理解类型转换
- 第6条:拥抱newtype模式
- 第7条:对复杂类型使用构造器
- 第8条:熟悉引用和指针类型
- 第9条:考虑使用迭代器转换代替显式循环
- 第2章 trait
- 第10条:熟悉标准库的trait
- 第11条:为RAII模式实现Drop trait
- 第12条:理解泛型和trait对象之间的权衡
- 第13条:使用默认实现来减少需要实现的trait方法
- 第3章 概念
- 第14条:理解对象生命周期
- 第15条:理解借用检查器
- 第16条:避免写unsafe代码
- 第17条:对共享状态的并行性保持警惕
- 第18条:不要panic
- 第19条:避免反射
- 第20条:避免过度优化的诱惑
- 第4章 依赖项
- 第21条:理解语义化版本
- 第22条:最小化可见性
- 第23条:避免通配符导入
- 第24条:重新导出在API中所用的依赖项类型
- 第25条:管理依赖图
- 第26条:警惕特性蔓延
- 第5章 工具
- 第27条:为公共接口撰写文档
- 第28条:在合适的时候使用宏
- 第29条:遵循Clippy的建议
- 第30条:不仅仅是单元测试
- 第31条:使用生态系统工具
- 第32条:搭建持续集成系统
- 第6章 超越标准Rust
- 第33条:考虑使库代码与no_std兼容
- 第34条:控制跨越FFI边界的内容
- 第35条:优先使用bindgen而不是手动FFI映射
- 后记
书名:Effective Rust:编写高质量Rust代码的35个有效方法
译者:邝劲强 译
国内出版社:机械工业出版社
出版时间:2026年01月
页数:248
书号:978-7-111-79910-8
原版书书名:Effective Rust: 35 Specific Ways to Improve Your Rust Code
原版书出版商:O'Reilly Media
David Drysdale
David Drysdale是Google的高级软件工程师,自2019年起便从事Rust相关工作,主要聚焦安全领域。他牵头用Rust重写了Android的硬件加密子系统,还主导了加密库Tink的Rust移植工作。他还涉足C/C++和Go语言开发,参与过Linux内核研发、移动视频会议应用开发等各类项目。
本书封面上的动物是斑点游泳蟹(学名:Arenaeus cribrarius)。这种蟹以夜行和独居行为闻名,但在受到威胁时,它可能展现出攻击性。这种蟹分布在大西洋沿岸的多个地方,从美国的马萨诸塞州到阿根廷,斑点游泳蟹的坚硬上壳,可以是浅棕色、浅红褐色或橄榄色,上面还带有白色或棕褐色的斑点。蟹壳的两侧各有九个侧齿,同时,蟹眼窝之间还有六个其他的齿。这种蟹的宽度大约有4.5~6英寸(11.43~15.24cm)。它的宽度是长度的两倍。
斑点游泳蟹的颜色让它能够在周围环境中伪装,并等待猎物,主要捕食碎屑。此外,它也会吃鱼、软体动物和其他甲壳类动物。
斑点游泳蟹的保护状况尚未评估,但由于该物种在巴西被商业捕捞,因此可能会影响其种群数量。