《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 的世界里习得七十二般变化,在计算机科学的道路上越走越远。

相关推荐
全栈弄潮儿9 分钟前
不要先问“用哪个 AI”,先盘点你的开发工作流
aigc·openai·ai编程
BingoGo41 分钟前
PHP clone 之后,为什么改副本会影响原对象?
后端·php
JaguarJack1 小时前
PHP clone 之后,为什么改副本会影响原对象?
后端·php·服务端
杨杨杨大侠1 小时前
大模型的权重到底怎么用?拆开一个 token 的生成过程
aigc·openai·ai编程
小灰灰搞电子1 小时前
Rust+Slint 实现动态消息提示框源码分享
开发语言·后端·rust
小奏技术2 小时前
10 MB 的 Postman 替代品,启动不到 1 秒
后端
东风破_2 小时前
Text2SQL :用自然语言操作 SQLite 数据库
人工智能·后端
吴佳浩 Alben2 小时前
Agent 怎么做自动化评测?构建端到端的 Agent Evaluation 体系
人工智能·语言模型·架构·自动化·ai编程
小虎AI生活2 小时前
从四大模型一周连发看企业 AI 落地,为什么 95% 的试点不赚钱
ai编程
孟健3 小时前
Gemini 3.8 Flash 没涨价,干活却贵了 40%?
ai编程