build-your-own-x:从零重建 30 种技术的完整路线图
【免费下载链接】build-your-own-xMaster programming by recreating your favorite technologies from scratch.项目地址: https://gitcode.com/GitHub_Trending/bu/build-your-own-x
build-your-own-x 是一个"从零重建"教程的精选索引,收录数据库、Web 服务器、操作系统、前端框架等 30 类技术的分步实现教程。它不教你怎么使用框架,而是逼你用几百行代码把自己天天用的技术内部实现重做一遍。如果你停在"会用但讲不清原理"的阶段,这个项目是补上这一层的最短路径。
📦 安装与上手:一条命令克隆教程清单
这个仓库本体就是一份 markdown 索引,没有依赖要装,也没有服务要起。核心内容全在 README.md 里:30 个技术大类,每类下挂不同语言的实现教程,一条一个项目。克隆下来打开 README,扫一遍目录就能定下你的第一个目标。
git clone https://gitcode.com/GitHub_Trending/bu/build-your-own-x cd build-your-own-x上手只有两步:克隆、打开 README。选定某条教程后,剩下的工作就是照着教程在本地把代码写出来。
🧭 读什么:按三条任务线搞懂技术栈底层
别顺着 README 的字母序目录逐个读,那是最耗精力的读法。按你想达成的目标组织模块,下面三条任务线各选 4 个代表项目。
前端原理线:搞懂框架内部在干什么
- Gooact:160 行 JS 写出的 React,看懂组件树和渲染循环的最小完整集。
- How to write your own Virtual DOM:读完它,框架重渲染背后的"diff 算法"不再神秘。
- Build Yourself a Redux:用几百行代码看完状态存储与订阅机制。
- Build Your Own Module Bundler - Minipack:从入口文件到最终 bundle,走一遍依赖图与模块打包。
系统编程线:摸到机器的底层
- Write a Shell in C:进程、execve 和终端工作方式的第一课。
- Build Your Own Text Editor(kilo 教程):从原始屏幕输出到按键处理,看懂终端转义序列全貌。
- Let's Build a Simple Database:13 步建出一个 B 树数据库,最硬的一步是理解数据在磁盘上的排布。
- Build Your Own Lisp:约 1000 行造一门语言,词法、内存、解释全自己来。
网络与服务线:写出真正响应请求的服务
- A Simple Web Server:约 500 行的 Python 教程,HTTP 请求解析与响应写入的入口。
- Let's code a web server from scratch with NodeJS Streams:看事件循环和流如何支撑并发。
- Beej's Guide to Network Programming:socket 模型、TCP/UDP 与多线程的标准参考。
- Sol - An MQTT broker from scratch:从 TCP 连接到消息发布订阅,完成一件长连接推送的小事。
🗺️ 怎么读:新手到系统级的 5 步路线
顺序比数量重要。每一步标了前置条件和预期耗时,中途可以停。
- Web 服务器热身,1~2 天。选 Web Server 分类下的 A Simple Web Server;前置:会任意一门语言的基本语法。目标是跑通"读教程→写同代码→本地验证"这一整套动作。
- 写自己的 Git,3~7 天。教程选 wyag(Python 实现);前置:日常使用 git。做完后对象模型和 commit 内部机制就是你自己的了。
- C 语言建简单数据库,1~2 周。从 README 的 Database 分类选 Let's Build a Simple Database;前置:会 C 指针与文件 IO。全程最难的一步。
- 前端框架拆解,1~2 周。前置:完成第 3 步,且真实项目用过 React。按 Gooact 再 Virtual DOM 的顺序做,组件到屏幕的链路一次讲透。
- 操作系统挑战,4 周以上,可长期放后面。前置:完成第 3 步。选 littleosbook 或 os01 任一,把引导和内存部分跑通,OS 章节就不再是纯理论。
❓ 避坑与答疑:怎么选、花多久、卡住找谁
该从哪种语言开始?选你最熟的那门。每个教程条目都标注了语言,同一项技术通常有 3~5 种不同语言实现,可以随意切换。
一个模块要预留多少时间?"40 行正则引擎"这类小模块一个晚上能写完,完整的数据库或 OS 教程按 1~4 周计划。用"周"做单位排期,别用"天"。
卡住了怎么办?先重读教程原步骤的讲解,再查对应技术的官方文档。注意这个仓库只是索引,真正内容在每条链接指向的教程里,教程附带的示例仓库是最好的参照物。
能提交新教程吗?发 PR 或提 Issue,按 ISSUE_TEMPLATE.md 填写即可。门槛写得很明确:从零构建的分步教程,拼装现成库的合集不收。
做完几个模块后,你拿到的不是一堆小轮子,而是一套稳定的工作方式:面对陌生技术,读教程、拆问题、写最小实现、逐步验证。这套动作对任何没碰过的东西都成立,这就是 build-your-own-x 的复利所在。
【免费下载链接】build-your-own-xMaster programming by recreating your favorite technologies from scratch.项目地址: https://gitcode.com/GitHub_Trending/bu/build-your-own-x
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考