作品简介

Rust是一门利用现代化的类型系统,有机地融合了内存管理、所有权语义和混合编程范式的编程语言。它不仅能科学地保证程序的正确性,还能保证内存安全和线程安全。同时,还有能与C/C++语言媲美的性能,以及能和动态语言媲美的开发效率。

本书并非对语法内容进行简单罗列讲解,而是从四个维度深入全面且通透地介绍了Rust语言。从设计哲学出发,探索Rust语言的内在一致性;从源码分析入手,探索Rust地道的编程风格;从工程角度着手,探索Rust对健壮性的支持;从底层原理开始,探索Rust内存安全的本质。本书涵盖了Rust 2018的特性,适合有一定编程经验且想要学习Rust的初学者,以及对Rust有一定的了解,想要继续深入学习的进阶者。

张汉东,80后,资深软件工程师、企业独立咨询师、技术作者译者。爱好读书、写作,喜欢研究技术、学习之道,以及心智和认知开发模式。曾在互联网行业沉浮十余载,先后效力于电商、社交游戏、广告和众筹领域。作为企业独立咨询师,先后为思科、平安科技和闪迪等公司提供咨询服务。目前在心智教育及创客领域开疆拓土。是《Ruby原理剖析》一书的译者。喜欢Rust语言,为Rust语言提交了三次编译器Bug,并协助修复其中之一。为官方Rust 2018 Guide做过贡献,并数次提出改进意见。参与了国内Rust社区的管理和运营,在2018年打造了《Rust每日新闻》频道,深受Rustacean们的喜爱。为初学者精心打造了Rust必学第一课:知乎Live《如何系统地学习Rust语言》,获得五星好评。

作品目录

  • 推荐序一
  • 推荐序二
  • 推荐序三
  • 前言
  • 第1章 新时代的语言
  • 1.1 缘起
  • 1.2 设计哲学
  • 1.3 现状与未来
  • 1.4 Rust代码如何执行
  • 1.5 小结
  • 第2章 语言精要
  • 2.1 Rust语言的基本构成
  • 2.2 语句与表达式
  • 2.3 变量与绑定
  • 2.4 函数与闭包
  • 2.5 流程控制
  • 2.6 基本数据类型
  • 2.7 复合数据类型
  • 2.8 常用集合类型
  • 2.9 智能指针
  • 2.10 泛型和trait
  • 2.11 错误处理
  • 2.12 表达式优先级
  • 2.13 注释与打印
  • 2.14 小结
  • 第3章 类型系统
  • 3.1 通用概念
  • 3.2 Rust类型系统概述
  • 3.3 泛型
  • 3.4 深入trait
  • 3.5 类型转换
  • 3.6 当前trait系统的不足
  • 3.7 小结
  • 第4章 内存管理
  • 4.1 通用概念
  • 4.2 Rust中的资源管理
  • 4.3 小结
  • 第5章 所有权系统
  • 5.1 通用概念
  • 5.2 所有权机制
  • 5.3 绑定、作用域和生命周期
  • 5.4 所有权借用
  • 5.5 生命周期参数
  • 5.6 智能指针与所有权
  • 5.7 并发安全与所有权
  • 5.8 非词法作用域生命周期
  • 5.9 小结
  • 第6章 函数、闭包与迭代器
  • 6.1 函数
  • 6.2 闭包
  • 6.3 迭代器
  • 6.4 小结
  • 第7章 结构化编程
  • 7.1 面向对象风格编程
  • 7.2 常用设计模式
  • 7.3 小结
  • 第8章 字符串与集合类型
  • 8.1 字符串
  • 8.2 集合类型
  • 8.3 理解容量
  • 8.4 小结
  • 第9章 构建健壮的程序
  • 9.1 通用概念
  • 9.2 消除失败
  • 9.3 分层处理错误
  • 9.4 恐慌(Panic)
  • 9.5 第三方库
  • 9.6 小结
  • 第10章 模块化编程
  • 10.1 包管理
  • 10.2 模块系统
  • 10.3 从零开始实现一个完整功能包
  • 10.4 可见性和私有性
  • 10.5 小结
  • 第11章 安全并发
  • 11.1 通用概念
  • 11.2 多线程并发编程
  • 11.3 异步并发
  • 11.4 数据并行
  • 11.5 小结
  • 第12章 元编程
  • 12.1 反射
  • 12.2 宏系统
  • 12.3 编译器插件
  • 12.4 小结
  • 第13章 超越安全的边界
  • 13.1 Unsafe Rust介绍
  • 13.2 基于Unsafe进行安全抽象
  • 13.3 和其他语言交互
  • 13.4 Rust与WebAssembly
  • 13.5 小结
  • 附录A Rust开发环境指南
  • 附录B Rust如何调试代码
展开全部