《Rust七十二变》开源了

Rust七十二变(Rust 72 Changes)

以 Rust 编程语言为舟,溯计算机底层原理之源。

本书以 Rust 语言为实践工具,分上、中、下三卷,共七十二篇(美其名曰"七十二变"),由浅入深地讲解计算机科学的核心原理------从数据如何被编码,到运算如何被组织,再到秘密如何被守护。每章均辅以可运行的 Rust 代码,帮助读者在理解原理的同时掌握实战技能。


内容概览

全书分为三卷,层层递进,环环相扣:

章节范围 主题 章数
上卷 第一 ~ 第十三 数据与编码 13
中卷 第十四 ~ 第四十 运算与算法 27
下卷 第四十一 ~ 第七十二 秘密与密码 32

上卷:数据与编码

探索计算机世界的"原材料"------从最基本的数字、字符、字节出发,逐步扩展到时间、图片、条码、二维码、音频、视频等复杂数据类型,最终探讨序列化、持久化与可视化等高级主题。

涵盖:数字、字符与编码、字节、时间、图片、条形码、二维码、音频、视频、万物皆可编码、序列化与反序列化、输入输出、数据与代码。

中卷:运算与算法

介绍各种数据如何通过运算与转换解决现实问题。从算术、关系、逻辑、位运算出发,深入到排序、搜索、哈希等经典算法,再扩展到人工智能、代数、几何、微积分、概率论、神经网络、自然语言处理、计算机视觉、强化学习和生成式 AI 等前沿领域。

涵盖:算术运算、关系运算、逻辑运算、位运算、交换/反转/旋转、类型转换、哈希、打包/拆包/压缩/解压、查询/检索/搜索、排序、Lambda 演算、人工智能、算法、代数、几何、行列式、矩阵、向量、函数、微积分、概率论、离散数学、神经网络、自然语言处理、计算机视觉、强化学习、生成式 AI。

下卷:秘密与密码

探讨如何通过密码技术实现数据的安全存储与传输。从口令和随机数出发,深入对称密码、非对称密码、哈希函数等核心密码学原语,再扩展到身份认证、授权、PKI、TLS、区块链、零知识证明、同态加密、量子密码等高级主题。

涵盖:口令、随机数、密钥、对称密码、非对称密码、不可逆密码、认证、授权、数字证书与 PKI、TLS/SSL、区块链、零知识证明、同态加密、量子密码学、无敌密码、终极密码。

附录

  • 问题与疑难解析
  • 程序员职业发展思考
  • 符号表速查
  • 百宝箱(常用 Rust 库与工具)
  • 实战项目
  • 游戏化练习

本书特色

  • 原理为先:每章从底层原理出发,讲解"为什么"而非仅仅是"怎么做"。
  • 代码为体 :所有核心概念配以 Rust 代码实现,可直接在 Rust Playground 或本地运行。
  • 实战为要:通过实战项目将分散的知识点串联成完整解决方案。

本地阅读

本书使用 mdBook 构建,支持数学公式(MathJax)与流程图(Mermaid)。

前置要求

bash 复制代码
cargo install mdbook mdbook-mermaid

构建与阅读

方式一:使用 mdbook serve(推荐)

bash 复制代码
# 进入项目目录
mdbook serve --open

浏览器将自动打开 http://localhost:3000/ 阅读本书。

方式二:构建静态站点后使用任意 HTTP 服务器

bash 复制代码
# 构建静态站点
mdbook build

# 使用 Python 启动本地服务器
cd book
python -m http.server 8080

# 或使用 miniserve
cd book
miniserve .

然后访问 http://localhost:8080/ 即可阅读。

注意 :直接以 file:// 协议打开 book/index.html 可能导致部分资源加载异常(如 SQL.js 数据库页面),建议使用上述 HTTP 服务器方式浏览。


项目结构

复制代码
rust-72-changes/
├── book.toml              # mdBook 配置文件
├── README.md              # 本文件
├── src/
│   ├── SUMMARY.md         # 目录结构
│   ├── chapter_0.md       # 序言
│   ├── chapter_1_Number.md    # 第一 数字
│   ├── chapter_2.md           # 第二 字符与编码
│   ├── ...                    # 其余章节
│   ├── data_and_encode.md     # 上卷引言
│   ├── operations_and_transformations.md  # 中卷引言
│   ├── chapter_secret.md      # 下卷引言
│   └── ...
├── book/                  # 构建输出目录(自动生成)
├── mermaid.min.js         # Mermaid 流程图支持
└── mermaid-init.js        # Mermaid 初始化脚本

适合人群

  • 有一定编程基础,希望深入理解计算机底层原理的开发者
  • 对操作系统、网络、密码学感兴趣的系统编程爱好者
  • 计算机专业学生,希望以实战代码加深理论理解
  • 技术管理者,希望了解 Rust 适用场景与技术趋势

预备知识

  • 基本的编程概念(变量、函数、条件、循环)
  • 对二进制、十六进制有初步了解
  • 高中水平的数学知识(代数、几何基础)

不具备 Rust 基础的读者也不用担心------本书会在必要时解释 Rust 特有的语法和概念,但建议同时参考 Rust 官方文档 进行系统学习。


参考资源


许可

本书采用开源方式分享,仅供学习交流使用。


愿每一位读者都能通过本书,在 Rust 的世界里习得七十二般变化,在计算机科学的道路上越走越远。

相关推荐
郝学胜_神的一滴1 小时前
Python 高级编程 028:字典dict从入门到精通
python·ai编程
想要成为糕糕手1 小时前
🚀 NestJS 完全入门指南: Module/Controller/Service讲解 + 实战 CRUD
后端·nestjs
开心就好20251 小时前
appuploader-cli 使用教程:在 Windows 上用命令行把 IPA 上传到 App Store
后端·ios
倾颜1 小时前
Node.js 为什么会慢?从 Event Loop、CPU、内存到并发控制聊性能问题
后端
用户921080262861 小时前
AI 应用平台为什么要拆分 Java 后端和 Python AI 服务
后端
shepherd1111 小时前
国产模型越来越强了:DeepSeek V4、Kimi K3 与 GLM 最新进展
人工智能·llm·ai编程
星火10241 小时前
【LangChain4j系列08】Agentic AI 多智能体协作
人工智能·后端
凤山老林1 小时前
零停机数据库演进:Spring Boot 集成 Flyway 与平滑DDL变更策略
数据库·spring boot·后端
步行cgn1 小时前
MyBatis <sql> 标签详解:SQL 片段的定义与复用
后端