跳到内容

学习路径

这六条路线从 14 个课程卷中选择与目标直接相关的章节。你不需要先读完整站。先检查前置知识,再按阶段完成一个可验证的产出;缺少某项基础时,回到对应卷补课。

下列时长都是规划估计,不是完成承诺。已有经验、每周投入和练习深度都会改变实际进度。机器可读版本见 learning-paths.json

路线适合谁估计范围最终产出
从零到第一份工作大学新生、自学或转专业入门者6–12 个月一个带数据库、HTTP API、测试和部署说明的小项目
后端工程师初级后端或想补系统基础的应用开发者3–6 个月一份可评审的后端服务设计与实现
数据与 AI 工程师数据分析、数据工程或准备转 ML/AI 的读者4–8 个月从数据处理到模型评估和服务说明的项目
系统程序员想转基础设施、数据库、编译器或运行时的开发者6–10 个月一个小型解释器、网络服务或存储组件
软件架构师高级工程师和技术负责人持续一份包含取舍和演进计划的架构决策记录
CS 面试复习校招、转岗或限时复习者1–3 个月按题型复盘、模拟设计和错题知识图谱

路线 1:从零到第一份工作

目标: 能独立完成基础开发任务,理解常见工具链,并知道遇到问题时该从哪一层排查。

阶段 1:开发工具

  • 第零卷:开发者工坊
  • 重点:终端、Git、IDE 调试、包管理、构建和 Docker。
  • 检查点:能够克隆项目、安装依赖、运行测试、设置断点并解释一次提交包含什么。

阶段 2:编程基础

阶段 3:数据结构与系统基础

阶段 4:网络基础

  • 网络分层
  • Socket 编程
  • TCP
  • HTTP
  • 检查点:能画出一次 HTTP 请求经过应用层、传输层和网络层的路径,并运行一个最小客户端/服务端例子。

阶段 5:数据库基础

阶段 6:后端项目

路线 2:后端工程师

前置: 能独立编写一个小型服务,理解集合、异常、I/O 和基础 SQL。

  1. 网络与 API: 计算机网络全卷,配合 API 设计
  2. 数据层: 数据库与数据系统;重点检查查询计划、事务、隔离、缓存和消息的适用边界。
  3. 工程质量: 测试策略CI/CD 与 DevOps
  4. 分布式服务: 分布式系统;先学 RPC、共识和存储,再进入 SRE、IaC、Kubernetes 和可观测性。

结业产出是一份可评审的服务设计:包含数据模型、事务边界、缓存或异步任务、故障处理、可观测性和发布流程。

路线 3:数据与 AI 工程师

前置: 能使用一种编程语言处理文件和集合,具备基础代数与概率知识。

数据与查询准备

Vol 5 ch05–ch08 讨论 LSM-Tree、列存、哈希索引、外部排序和查询优化,不应当作分布式处理或流处理课程。分布式批处理与流处理应从 Vol 12 ch09 进入。

数学和机器学习

结业产出应覆盖数据清洗、特征处理、训练与评估,并写清模型服务方式、数据边界和已知风险。

路线 4:系统程序员

前置: 熟悉一种系统语言或愿意补 C,能读基本数据结构和网络代码。

  1. 计算机系统: 第三卷全卷,重点关注内存、进程、并发、文件系统和汇编调用约定。
  2. 编译与语言: 编译原理语言深度
  3. 网络与分布式: 计算机网络分布式系统
  4. 性能主线: 缓存体系CPU 流水线性能工程

结业时实现一个小型解释器、网络服务或存储组件,并用基准、分析器或系统指标解释性能结果。

路线 5:软件架构师

前置: 有持续交付和维护生产系统的经验。本站可以补知识,不替代真实项目中的需求澄清、故障复盘和跨团队决策。

  1. 架构基础: 软件工程与设计模式DDD
  2. 分布式与一致性: 分布式系统数据一致性
  3. 安全与治理: 安全与加密数据治理
  4. 可观测性: 可观测性基础可观测性深入。Vol 7 ch07 是 Docker 与 Kubernetes,不是可观测性章节。

每次选一个真实系统,产出架构决策记录:需求边界、候选方案、关键取舍、数据一致性、安全、可观测性、迁移步骤和回滚条件。

路线 6:CS 面试复习

目标: 在有限时间内按知识缺口复习,不用题量替代理解。

算法

  • 复杂度分析、数组与链表、哈希、树、、递归、动态规划和排序。
  • 按题型选择练习;每道错题记录错误假设、复杂度和可复用模式。

系统、网络和数据库

系统设计和语言

结业产出是按主题整理的错题与知识图谱,加上数次限时编码和系统设计模拟复盘。数量由目标岗位和当前缺口决定。

专业读者速查

主题精确入口
HTTP 请求路径网络分层 · TCP · HTTP
TLSHTTPS 与 TLS
DNS、CDN、负载均衡Vol 4 ch07
CPU 缓存与内存层次Vol 3 ch05
虚拟内存Vol 3 ch06
查询优化器Vol 5 ch08
事务与隔离事务 · MVCC 与隔离级别
RaftVol 7 ch03
可观测性基础 · 深入
API 设计与 DDDAPI 设计 · DDD
模型评估Vol 13 ch08

跨语言阅读

多数应用层章节以 Java 为主,并提供 Python 或 C/C++ 对比;计算机系统章节以 C/C++ 更合适,数据与 AI 章节常用 Python。先抓住数据模型、状态变化和复杂度,再处理语法差异。看到语言对比窗口时,只核对当前概念的差异,不必同时完成三份实现。

关于机器可读路径

learning-paths.json 为每条路线提供稳定 ID、受众、学习产出、阶段、时长估计、章节引用和结业评估。npm run validate:docs 会检查引用是否存在,但不会判断路线是否适合某个具体读者,也不会验证文章中的技术结论。

Built with VitePress | Software Systems Atlas