阶段一 · 课程学习指南

本阶段共 5 门课,按推荐学习顺序排列。每一门都按「为什么学 → 知识地图 → 经典案例 → 引发思考」展开。


1. 计算机基础实战课(必学,第一门)

为什么学:这门课是整个体系的「世界观启蒙」。它帮你把计算机拆成 CPU、内存、磁盘、网络、操作系统几大块,每一块在跑程序时干什么。不懂它,后面所有课程里的「黑话」(缓存、IO、进程、线程)都只是模糊的声音。

知识地图:

  • 冯·诺依曼结构:输入、存储、运算、控制、输出
  • CPU 如何执行指令(取指、译码、执行)
  • 内存与寻址、栈与堆
  • 磁盘 IO 与文件系统
  • 网络基础与分层模型
  • 程序从编译到运行的完整过程

经典案例:老师让小白做一道「找茬题」:一个程序很慢,下面哪个环节可能是元凶?A. CPU 满 B. 内存不足 C. 磁盘慢 D. 网络延迟。小白凭感觉猜,老师却带着他逐个环节用工具验证——先 top 看 CPU,再 free 看内存,再 iostat 看磁盘。小白恍然大悟:原来「排查」不是猜,是一步步排除。

引发思考:

  1. 为什么内存比磁盘快几百倍?如果内存和磁盘一样快,计算机设计会变成什么样?
  2. 程序崩溃了,数据可能丢在哪一层?(寄存器 / 缓存 / 内存 / 磁盘)
  3. 「缓存」为什么能提速?有没有「缓存越多越慢」的反例?
  4. 打开一个 1GB 的文件,和复制一个 1GB 的文件,哪个更耗内存?为什么?

2. 深入 C 语言和程序运行原理(必学)

为什么学:C 语言是距离「机器」最近的流行语言。理解 C 里的指针、内存分配、函数调用栈,你就理解了一切语言的底层运行逻辑——Java、Go、Python 的「高级感」都是建立在同样的机器模型之上的。

知识地图:

  • 指针与地址:变量在内存里到底长什么样
  • 内存布局:代码段、数据段、堆、栈
  • 函数调用与栈帧:递归为什么会爆栈
  • 编译、链接、装载:从 .c 到可执行文件发生了什么
  • 栈溢出、内存泄漏、野指针

经典案例:小白写递归求斐波那契数列,输入 50,程序直接崩溃。老师指着错误信息里的 stack overflow 说:「每次递归调用,系统都会在栈上开一间『办公室』,你开了 50 层楼那么深的嵌套,办公室占满了,就崩了。」 小白第一次真正理解「栈」——不是抽象概念,是真实存在的内存区域。

引发思考:

  1. 为什么说「指针是 C 语言的灵魂也是魔鬼」?
  2. 内存泄漏的「泄漏」到底漏去了哪里?内存会越用越少吗?
  3. 数组越界为什么会改掉别的变量的值?(提示:它们在内存里是邻居)
  4. 为什么程序员要用「栈」来管理函数调用,而不是随便一块内存?

3. 编程高手必学的内存知识(必学)

为什么学:99% 的性能问题,最��都能追到「内存」上。这门课让你从「内存条」一路看到「CPU 缓存」「虚拟内存」「垃圾回收」,彻底搞懂数据在机器里是怎么流动的。

知识地图:

  • 内存层级:寄存器 → L1/L2/L3 缓存 → 内存 → 磁盘
  • 局部性原理:为什么顺序访问比随机访问快 100 倍
  • 虚拟内存与分页、缺页中断
  • 缓存一致性、伪共享
  • 垃圾回收与内存管理(Java/Go/Python 视角)

经典案例:老师给出同一段代码的两种写法——一个按行遍历二维数组,一个按列遍历,其他完全一样。小白跑出来发现按行快了几十倍,目瞪口呆。老师揭秘:内存是按「行」读的,按列访问等于每次都让 CPU 等内存慢慢搬运,而按行访问直接命中缓存。 从此小白写代码前会先想想数据怎么排布。

引发思考:

  1. 为什么说「缓存未命中」比「计算慢」更致命?
  2. 两个线程改相邻的变量,为什么反而更慢?(伪共享)
  3. 虚拟内存是「假的」内存吗?它是怎么骗过所有程序的?
  4. 内存不够了,为什么系统会「卡死」而不是直接报错?

4. 说透芯片(选学,拓展视野)

为什么学:算力是这个时代的石油,而芯片是算力的心脏。懂芯片的人,聊 AI、聊云计算、聊手机,都能说到点子上。对纯程序员,这是一门「增认知」的课。

知识地图:

  • 芯片制造流程:设计 → 流片 → 封装 → 测试
  • 制程工艺:7nm、5nm、3nm 到底是什么意思
  • 摩尔定律为什么「失效」了
  • CPU / GPU / NPU 的分工
  • 国产芯片的现状与挑战

经典案例:小白问「为什么 iPhone 比 5 年前快那么多,难道摩尔定律还在继续?」老师答:「单核性能早就涨不动了,现在的快是『堆核 + 专用加速器 + 软硬协同』的结果。你用手机拍照,AI 芯片帮你算,CPU 帮你调度,GPU 帮你渲染,是三个部门协同,而不是一个部门单打独斗。」

引发思考:

  1. 为什么芯片制程越小越难?「7nm」里的 nm 指什么?
  2. AI 训练为什么离不开 GPU?GPU 和 CPU 的本质区别是什么?
  3. 如果芯片技术停滞 10 年,互联网会发生什么?

5. 说透 5G(选学,拓展视野)

为什么学:5G 是 IoT、车联网、云游戏的底座。理解它,你就理解了「万物互联」时代为什么可能。

知识地图:

  • 无线通信的基本原理
  • 1G~5G 的演进:每一代解决了什么问题
  • 5G 的三大场景:eMBB / mMTC / uRLLC
  • 5G 与 4G 的底层差异(毫米波、小基站、网络切片)
  • 5G 的应用与争议

经典案例:小白问「5G 不就是网速快一点吗?」老师反驳:「5G 的快只是表象。它真正的价值是『低延迟』和『海量连接』——远程手术需要 1 毫秒级延迟,智能工厂需要 100 万个传感器同时在线,这些 4G 做不到,只有 5G 的网络切片和毫米波能做。」

引发思考:

  1. 网速快了,为什么延迟不一定低?(带宽 ≠ 延迟)
  2. 为什么说「自动驾驶离不开 5G」?4G 差在哪?
  3. 5G 基站为什么比 4G 建得密?这和波长有什么关系?

本阶段小结

学完这 5 门课,你头脑里应该有一张图:程序 = 数据在 CPU、内存、磁盘、网络之间的流动。这张图会陪着你走完整个体系——学算法时想到「内存布局」,学数据库时想到「磁盘 IO」,学架构时想到「缓存与网络」。

下一站:02_阶段二_编程语言/,选一门语言,真正开始写代码。