Project Icon

nomicon-zh-Hans

深入探索 Unsafe Rust 的高级编程指南

Rust 秘典是一本专注于 Unsafe Rust 编程的高级指南。该项目详细阐述了编写正确 Unsafe Rust 代码所需的复杂细节,包括高级技巧和潜在风险。提供中英文双语版本和在线阅读功能,适合希望深入理解 Rust 底层机制的开发者。项目开源并接受社区贡献,为 Rust 高级学习提供了重要参考资料。

Rust 秘典

高级 Unsafe Rust 编程的黑科技指南

在 Rust 社区内俗称"nomicon",另有中文译名"死灵书"1

在线阅读:https://nomicon.purewhite.io/

注意:本书仍为草案,其中可能包含严重错误

我没有寻见自己期待的程序,只感受到了令人战栗的黑暗与无法言喻的孤独;最终,我察觉到了一个可怖的真相。过去甚至没有人胆敢低声说出这一事实——这是秘密中秘密,是不能低声言及的秘密——人们一直认为这门如砖石般刺耳的语言2乃是 Rust 感性的延续,就像是伦敦之于旧伦敦,巴黎之于旧巴黎,然而事实并非如此,它反而很不安全。甚至连现状都未能被固化保持,一些异样的东西正在它粗糙的语义上生机勃勃地孽生繁衍——这些东西与欲编译的它没有任何关联。3

原文:

Instead of the programs I had hoped for, there came only a shuddering blackness and ineffable loneliness; and I saw at last a fearful truth which no one had ever dared to breathe before — the unwhisperable secret of secrets — The fact that this language of stone and stridor is not a sentient perpetuation of Rust as London is of Old London and Paris of Old Paris, but that it is in fact quite unsafe, its sprawling body imperfectly embalmed and infested with queer animate things which have nothing to do with it as it was in compilation.4

本书深入探讨了各种令人抓狂的细节,你必须理解这些细节才能写出正确的 Unsafe Rust 代码。这种探讨可能释放出无尽恐怖,令你道心破碎;鉴于问题本质,无法避免这种情况。

构建依赖

如果你想要自己构建《Rust 秘典》,需要使用 mdBook。安装方法:

cargo install mdbook

如果想要构建的 Html 站点支持中文搜索功能,请改用 Sunshine40/mdBook 的 search-non-english 分支

安装方法(这种情况下不需要按上一段步骤安装官方版本 mdBook):

cargo install mdbook --git https://github.com/Sunshine40/mdBook --branch search-non-english --force

mdBook 用法

为了方便一键构建《Rust 秘典》双语对照版本,建议使用:
(先确保工作路径位于本项目文件夹根路径)

./build.sh

构建结果会存放到 book 子目录中。用浏览器打开其中的 index.html 文件即可查看效果。如果在执行 ./build.sh 时附带 --open 标志,(构建成功后)它就会直接用默认浏览器打开书籍首页,和 cargo doc --open 同理:

./build.sh --open

也可以使用 mdbook build 命令单独构建中文版本(构建英文版本需要仿照 build.sh 配置参数):

mdbook build

mdbook 还有一个 test 子命令用于测试书中包含的所有代码样例:

mdbook test

linkcheck

我们使用 linkcheck 工具来检查失效的链接。本地执行方法:

curl -sSLo linkcheck.sh https://raw.githubusercontent.com/rust-lang/rust/master/src/tools/linkchecker/linkcheck.sh
sh linkcheck.sh --all nomicon-zh-Hans

贡献

欢迎大家一起参与《Rust 秘典》的中文简体翻译,如果你觉得有可改善之处欢迎直接 PR,我会尽快处理;或者如果你不太确定是否需要更改,也可以提一个 Issue。

翻译风格指南:https://zh-style-guide.readthedocs.io/

后续规划

  • 完成代码中注释的翻译
  • 完成中英文双语版本,支持页内一键切换语言
  • 搭建自动发版部署流程
  • 有没有可能支持更新订阅?(RSS?)或者有重要更新时邮件提醒?
  • more(欢迎通过 issue 提出)

Footnotes

  1. Stephen Bell 回答"'-onomicon'后缀是什么意思?" - Quora

  2. 指 Unsafe Rust

  3. 译文参照:《他》 by 竹子

  4. 本段致敬的原文:H. P. Lovecraft Quote from "He"

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

稿定AI

稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号