Rust七十二变(Rust 72 Changes)
以 Rust 编程语言为舟,溯计算机底层原理之源。
本书以 Rust 语言为实践工具,分上、中、下三卷,共七十二篇(美其名曰"七十二变"),由浅入深地讲解计算机科学的核心原理——从数据如何被编码,到运算如何被组织,再到秘密如何被守护。每章均辅以可运行的 Rust 代码,帮助读者在理解原理的同时掌握实战技能。
内容概览
全书分为三卷,层层递进,环环相扣:
| 卷 | 章节范围 | 主题 | 章数 |
|---|---|---|---|
| 上卷 | 第一 ~ 第十三 | 数据与编码 | 13 |
| 中卷 | 第十四 ~ 第四十 | 运算与算法 | 27 |
| 下卷 | 第四十一 ~ 第七十二 | 秘密与密码 | 32 |
上卷:数据与编码
探索计算机世界的"原材料"——从最基本的数字、字符、字节出发,逐步扩展到时间、图片、条码、二维码、音频、视频等复杂数据类型,最终探讨序列化、持久化与可视化等高级主题。
涵盖:数字、字符与编码、字节、时间、图片、条形码、二维码、音频、视频、万物皆可编码、序列化与反序列化、输入输出、数据与代码。
中卷:运算与算法
介绍各种数据如何通过运算与转换解决现实问题。从算术、关系、逻辑、位运算出发,深入到排序、搜索、哈希等经典算法,再扩展到人工智能、代数、几何、微积分、概率论、神经网络、自然语言处理、计算机视觉、强化学习和生成式 AI 等前沿领域。
涵盖:算术运算、关系运算、逻辑运算、位运算、交换/反转/旋转、类型转换、哈希、打包/拆包/压缩/解压、查询/检索/搜索、排序、Lambda 演算、人工智能、算法、代数、几何、行列式、矩阵、向量、函数、微积分、概率论、离散数学、神经网络、自然语言处理、计算机视觉、强化学习、生成式 AI。
下卷:秘密与密码
探讨如何通过密码技术实现数据的安全存储与传输。从口令和随机数出发,深入对称密码、非对称密码、哈希函数等核心密码学原语,再扩展到身份认证、授权、PKI、TLS、区块链、零知识证明、同态加密、量子密码等高级主题。
涵盖:口令、随机数、密钥、对称密码、非对称密码、不可逆密码、认证、授权、数字证书与 PKI、TLS/SSL、区块链、零知识证明、同态加密、量子密码学、无敌密码、终极密码。
附录
- 问题与疑难解析
- 程序员职业发展思考
- 符号表速查
- 百宝箱(常用 Rust 库与工具)
- 实战项目
- 游戏化练习
本书特色
- 原理为先:每章从底层原理出发,讲解"为什么"而非仅仅是"怎么做"。
- 代码为体:所有核心概念配以 Rust 代码实现,可直接在 Rust Playground 或本地运行。
- 实战为要:通过实战项目将分散的知识点串联成完整解决方案。
本地阅读
方式一:使用任意 HTTP 服务器(推荐)
# 使用 Python 启动本地服务器
cd book
python -m http.server 8080
# 或使用 miniserve
cd book
miniserve .
然后访问 http://localhost:8080/book/index.html 即可阅读。
注意:直接以
file://协议打开book/index.html可能导致部分资源加载异常(如 SQL.js 数据库页面),建议使用上述 HTTP 服务器方式浏览。
适合人群
- 有一定编程基础,希望深入理解计算机底层原理的开发者
- 对操作系统、网络、密码学感兴趣的系统编程爱好者
- 计算机专业学生,希望以实战代码加深理论理解
- 技术管理者,希望了解 Rust 适用场景与技术趋势
预备知识
- 基本的编程概念(变量、函数、条件、循环)
- 对二进制、十六进制有初步了解
- 高中水平的数学知识(代数、几何基础)
不具备 Rust 基础的读者也不用担心——本书会在必要时解释 Rust 特有的语法和概念,但建议同时参考 Rust 官方文档 进行系统学习。
参考资源
- The Rust Programming Language — Rust 官方教程
- Rust by Example — 通过示例学习 Rust
- Rustlings — Rust 小练习
- Crypto101 — 密码学入门
许可
本书采用开源方式分享,仅供学习交流使用。
愿每一位读者都能通过本书,在 Rust 的世界里习得七十二般变化,在计算机科学的道路上越走越远。
Ext Link: https://gitee.com/zhiluniao/rust-72-changes
评论区
写评论还没有评论