零基础CS自学路线:MIT/CMU开源课程的完整计算机学习规划(2-3 年)
【免费下载链接】cs-self-learning计算机自学指南项目地址: https://gitcode.com/GitHub_Trending/cs/cs-self-learning
「CS自学指南(cs-self-learning)」把 MIT、CMU、Stanford 等名校的开源计算机课程按方向整理成册,并附一份可以直接照走的 CS 自学规划。坚持走完全套,大约 2~3 年,你能带走的是一套完整的计算机知识体系:扎实的数学功底、数十个千行代码量项目的实战经验、多种主流编程语言,以及足以支撑就业或科研的底气。
先对号入座:你是哪类读者
仓库把读者分成三类,你属于哪一类,决定了打开书的顺序。不要从同一页开始。
低年级在校生:从「初入校园」章读起
- 先读 docs/使用指南.md 的「初入校园」一章,这是作者给前两年自学者写的方法论。
- 打基础阶段,数学拿 MITLA 这类课补线代,工具链从 MIT-Missing-Semester 这类课搭起来。
- 大二之后,把 docs/CS学习规划.md 当主线,和课表对着走。
在职转码者:直奔「删繁就简」核心课表
- 跳过入门课,读使用指南的「删繁就简」一章。作者筛出了 11 门核心课:从 CS70 离散数学、Algo 算法、CSAPP 系统基础,到 15445 数据库、CS230 深度学习。
- 按那张课表的顺序逐门推进,不必全书通读。
- 时间紧就把精力压在系统和数据库上,它们最通用。
已定方向的专业人士:直接翻课程地图
- 打开 docs/CS学习规划.md 的课程地图,定位你要深耕的方向。
- 在该方向下挑一门课作为主线,完整学完。
- 还有余力,再选另一所学校的同类课,对照一下自己的理解。
- 最后把计划写进文档末尾的「定制属于你的课程地图」。
仓库里的四层,别急着全翻
整个仓库只有四层,按优先级读,顺序错了会浪费时间:
- 第一层,docs/使用指南.md:这本书怎么读,三类读者各自的读法。最先读,10 分钟。
- 第二层,docs/CS学习规划.md:总索引加课程地图,20 多个方向全在这里。这是整个计算机学习路线的骨架,通读一遍,圈出本学期想动的方向。
- 第三层,docs/必学工具/:Git、Vim、CMake 等工具箱。不要一次读完,用到哪篇查哪篇。
- 第四层,课程文档树:20 多个方向目录,每门课配好视频、讲义与作业。轮到你上这门课,再打开它。
第一周:把这三件小事做完
任务 1,clone 仓库
git clone https://gitcode.com/GitHub_Trending/cs/cs-self-learning完成标准:本地多出一个 cs-self-learning 文件夹,打开 docs/CS学习规划.md 能看到完整课程地图。
任务 2,定位读法并通读课程地图
先在使用指南里找到属于你那一节,再把 CS 学习规划通读一遍。完成标准:你能一句话说清「我现在在哪个位置、下一门该上什么课」。
任务 3,做完 CS50P 第一个实验
进入 docs/编程入门/Python/CS50P.md,这门课先修要求为零。跟着作业做出第一个程序。完成标准:代码是你亲手敲的,并且运行输出了预期结果。想把练习提交成代码记录,顺手读一遍 docs/必学工具/Git.md,把版本控制的基本动作学会。
三个常见弯路,多数新手都踩
弯路 1,同一方向的课,每所学校的都想学完
以操作系统为例:这个目录下收录了 MIT、伯克利、南大、哈工大 4 个版本。新手容易一门接一门地开,结果哪门都没走完。正确做法是选一门当主线,比如 MIT6.S081,跟着它把 xv6 的 11 个 lab 做完,整个学程按一个学期排期;再用另一所学校的同类课对照一下自己的理解即可,4 个版本不必全学。
弯路 2,只刷视频,不动手写实验
视频只是入口,课程的精华在课程页的「作业」一栏里。CSAPP 是缓存与并发类实验,6.006 和 Algo 是排序、图论这类编程项目,15445 是给 bustub 教学数据库逐步添加功能(按一个学期规划),CS144 是 8 个 checkpoint 搭出整个 TCP/IP 协议栈,CS230 是配套编程练习。视频全刷完但实验一个没写,等于没学这门课。
拿不定从哪个方向开局,速查这几行:
- 数学:MITLA 加 CS70,每讲做课后习题,按一学期规划
- Web:mitweb 四周速成,CS142 系统版(100 小时),目标是搭出一个真正的 Web 应用
- 系统:CSAPP,配教材精读,约一个季度
- 算法:6.006(Python)/ Algo(Java),约一个季度
- 深度学习:CS230(吴恩达)/ LHY,配套练习,约一个季度
弯路 3,从不回头对照总索引修正路线
课程地图不是一次性读物。每隔几周回到 docs/CS学习规划.md 核对:下一个方向是什么,先修课还差哪一门。文档末尾的「定制属于你的课程地图」就是留给你的填空位,把答案写上去。
一个学期后,用这三件事考自己
- 能独立完成某门课的核心项目:挑一个,CS144 的 8 个 checkpoint(TCP/IP 协议栈)、xv6 的 11 个 lab、bustub 的系列 Project,完整地做完。卡住时靠手头的讲义和代码自己 debug,而不是搜现成答案。
- 能把核心概念讲给非专业的人听:合上文档,把虚拟内存、B+ 树索引讲给圈外朋友。讲不顺的地方,就是没学透的地方。
- 能定制出下一学期的路线:用「定制属于你的课程地图」说清楚下学期上哪几门课、先修还缺什么。
仓库地址:GitHub_Trending/cs/cs-self-learning(用正文里的命令 clone 一次即可) 文档总索引:docs/CS学习规划.md 建议每季度回看一次总索引,对照掌握情况修正学习方向 🧭
【免费下载链接】cs-self-learning计算机自学指南项目地址: https://gitcode.com/GitHub_Trending/cs/cs-self-learning
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考