build-your-own-x:从零复刻 30 种技术的教程合集

GitHub 上 Star 数超过 51 万的仓库不多,codecrafters-io/build-your-own-x 是其中之一。

正文顶部截图

这个仓库做的事情很简单:收集并整理各个技术领域的"从零实现"教程,让开发者通过动手写代码来理解底层原理。仓库引用了费曼的一句话:“What I cannot create, I do not understand”,这也算是整个项目的核心理念。

仓库收录了大约 30 个分类,基本覆盖了计算机科学的主要方向。挑几个典型的:

  • 3D Renderer:从光线光栅化到完整渲染引擎,C++ 和 Python 教程为主
  • AI Model:包括从零搭建大语言模型、扩散模型、RAG 检索增强生成
  • Database:Redis、B+Tree 到 SQL,C/Go/Rust/Python 都有
  • Operating System:x86 引导加载、内核开发、RISC-V、Linux from scratch
  • Programming Language:Lisp 解释器、编译器、垃圾回收器,语言涵盖 C、Haskell、Python、Rust 等
  • Web Browser:Rust 实现浏览器引擎、Python 实现浏览器工程
  • Network Stack:TCP/IP 协议栈、Beej 网络编程指南

教程的组织方式是按分类列出,每个条目标注了使用的编程语言和教程标题,点击即可跳转到原文。格式统一,浏览起来比较高效。

README区域截图

这个仓库的核心价值在于筛选。互联网上"从零写 XXX"的教程数量庞大,质量参差不齐。build-your-own-x 做了一层过滤,只收录作者验证过的、质量较高的教程。对于想深入理解某个技术原理的开发者来说,不用自己花时间筛选,直接在这个列表里找对应分类和语言就行。

从内容分布来看,C、C++、Python、JavaScript、Go、Rust 是出现频率最高的几种语言。每个分类下的教程数量不等,像 Operating System、Programming Language 这类大方向收录了几十个条目,而 Memory Allocator 这种相对小众的方向则只有一个。

仓库本身不包含教程内容,只提供链接索引。好处是内容始终由原作者维护,坏处是部分外链可能随时间失效。不过仓库本身会持续更新,社区也会提交新的教程补充进来。

代码crafters-io 同时运营一个同名的编程学习平台,这个仓库也是他们品牌的一部分。但从内容本身来看,作为一份免费的教程导航清单,它的价值是明确的,适合放在收藏夹里慢慢翻。

的教程导航清单,它的价值是明确的,适合放在收藏夹里慢慢翻。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐