ZOYKU火线榜

codecrafters-io/build-your-own-x技术文档

Master programming by recreating your favorite technologies from scratch.

极速安装
git clone https://github.com/codecrafters-io/build-your-own-x.git

从零构建你的专属技术底座 (Build Your Own X)

通过“从零手写核心技术”,彻底掌握编程精髓与系统底层原理。

状态 协议

目录与设计哲学

本指南精选全球优质的从零手写教程,通过动手实现真实运行的工业级软件原型,攻克分布式系统、编译器与操作系统的底层壁垒。

从零手写 Git 版本控制器

Git 是分布式版本控制系统的工业基石。手写 Git 能够帮助开发者深入理解内容寻址存储、SHA-1 对象哈希散列、Tree 树状节点与 Commit 有向无环图 (DAG)。

git clone https://github.com/codecrafters-io/build-your-own-x.git
cd build-your-own-x
# 开始探索 Git 核心对象架构
  • 用 Python 手写一套完整的 Git 原型
  • 基于 Rust 从零实现 Git 对象模型与压缩包索引
  • 深入浅出 Go 语言编写 mini-git

从零手写 Docker 与容器引擎

容器并不是虚拟机,而是通过 Linux 内核的 cgroups 资源限额、namespaces 进程隔离和 chroot 根目录切换构筑的隔离进程。

#define _GNU_SOURCE
#include <sched.h>
#include <stdio.h>
#include <unistd.h>

int main() {
    printf("初始化 Linux Namespaces 容器沙箱...\n");
    return 0;
}
  • 500 行 C 语言手写 Linux 容器
  • 用 Go 语言从零实现类似 runc 的 OCI 容器运行时

从零手写数据库与存储引擎

关系型数据库与键值存储是现代后端架构的核心。手写数据库将彻底揭秘 B+ 树索引、预写日志 (WAL)、内存表 (MemTable) 与 SQL 解析器执行计划。

CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT);
INSERT INTO users VALUES (1, "Ada Lovelace");
  • C 语言一步步实现 SQLite 嵌入式数据库
  • Go 语言实现高性能高并发 Redis 服务器
  • Rust 打造极简 LSM-Tree 键值存储引擎

从零手写微型操作系统内核

掌握引导加载程序 (Bootloader)、x86 中断门描述符、页表映射、虚拟内存管理与进程时钟抢占调度。

  • 1000 行 C 语言写完微型 RISC-V 操作系统
  • 使用 Rust 编写操作系统内核 (Philipp Oppermann 经典专栏)

开发者路线建议与社区贡献

欢迎所有开发者提交优质的手写教程 PR。请确保引用的教程内容永久公开可访问、无商业广告并遵循开源分享精神。

文档镜像归档自 GitHub 官方源路径 · 访问原项目 GitHub
最后同步快照:2026-11-09