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

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

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

Project Cover

Kimi

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

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

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

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

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