本文档解释了 CS 自学指南中从基础到高级主题的计算机科学主题推荐学习顺序。它概述了学习的逻辑流程和不同学科领域之间的依赖关系,以帮助您有效地规划自学之旅。有关用于记录个别课程的具体格式的信息,请参阅课程文档格式。
CS 自学指南通过精心挑选的全球顶尖大学课程,提供了一种结构化的计算机科学学习方法。该学习路径旨在
来源:mkdocs.yml135-287 docs/index.md15-20
学习路径分为层级类别,从基础知识进展到专业主题。下图说明了这种进展顺序
学习路径分为以下主要类别,每个类别包含特定的课程和资源
在深入技术内容之前,设置学习环境和掌握生产力工具至关重要
来源:mkdocs.yml136-153 docs/index.md15-18
数学为计算机科学提供了理论基础
编程技能是应用计算机科学概念的基础
来源:mkdocs.yml166-188 docs/index.md53
这些学科领域代表了每位计算机科学家都应理解的基础知识
这些领域允许根据兴趣和职业目标进行更深入的探索
了解学科领域之间的依赖关系有助于规划有效的学习顺序。以下图表说明了推荐的学习顺序和先决条件
来源:mkdocs.yml135-287 docs/index.md51-53
在每个类别中,本指南提供来自不同大学的多种课程选择。这允许您
例如,以下是操作系统类别中课程设置的细分
| 课程 | 大学 | 重点领域 | 项目亮点 |
|---|---|---|---|
| 6.S081 | 麻省理工学院 | xv6,类 Unix 操作系统 | 在 xv6 中实现操作系统功能 |
| CS162 | 加州大学伯克利分校 | 操作系统概念,设计 | Pintos 项目 |
| NJUOS | 南京大学 | 操作系统实现 | uCore 项目 |
| 哈尔滨工业大学 | 哈尔滨工业大学 | 操作系统内部原理 | 自定义操作系统项目 |
CS 自学指南可以适应不同的职业目标和时间限制
软件工程方向:编程基础 → 数据结构与算法 → 软件工程 → Web 开发/数据库
系统方向:编程基础 → 计算机系统原理 → 计算机体系结构 → 操作系统 → 分布式系统
人工智能/机器学习方向:编程基础 → 数学基础 → 数据结构与算法 → 机器学习 → 深度学习
计算机图形学方向:编程基础 → 数学基础 → 计算机系统原理 → 图形学
来源:docs/index.md15-16 mkdocs.yml135-287
以下图表将存储库中的特定文件路径与学习路径结构进行映射,展示了课程内容是如何组织的
CS 自学指南中的学习路径结构提供了一种全面、灵活的方法,通过自学来掌握计算机科学。通过遵循推荐的学习顺序,并选择符合您学习风格和目标的课程,您可以打下坚实的基础,然后专注于您最感兴趣的领域。
请记住,学习计算机科学不是严格线性的——在遇到更高级主题中的应用时,回顾基础概念通常很有用。本指南的结构支持这种迭代学习方法,同时确保您为每个新主题都具备必要的先决条件。
刷新此 Wiki
最后索引时间2025 年 4 月 18 日 (229499)