OSSU(Open Source Society University,开源社会大学)提供了一套完整的计算机科学自学课程体系,使用来自世界顶级大学的在线课程材料。这不仅仅是职业培训或专业发展课程,而是一套全面的、经过精心设计的教育方案,涵盖了计算机科学本科专业的所有核心知识。
课程设计参照了 CS 2013 课程标准(计算机科学本科学位项目课程指南),课程来源包括 MIT、斯坦福、哈佛、普林斯顿等世界顶尖学府。
| 项目信息 | 详情 |
|---|---|
| GitHub 星标 | 202,356+ |
| 课程来源 | MIT、斯坦福、哈佛、普林斯顿等 |
| 预计时长 | 约 2 年(每周 20 小时) |
| 费用 | 全部或几乎全部免费 |
| 创建者 | Eric Douglas |
| 社区支持 | Discord 活跃社区 |
| 等效学位 | 完成后等同于计算机科学本科学位 |
OSSU 课程体系分为四个阶段,从入门到高级逐步深入:
计算机科学入门体验,帮助你判断这个领域是否适合你。涵盖计算、命令式编程、基础数据结构和算法。
相当于计算机科学前三年的课程,包括所有专业必修课:核心编程、核心数学、CS 工具、核心系统、核心理论、核心安全、核心应用和核心伦理。
相当于最后一年的选修课程,根据个人兴趣选择方向:高级编程、高级系统、高级理论、高级信息安全、高级数学。
利用所学知识解决实际问题的实践项目,可选择 Fullstack Open、现代机器人学、数据挖掘等方向。
核心 CS 课程要求具备高中数学基础(代数、几何、预微积分)。高级 CS 课程需要先完成所有核心 CS 课程。
使用 OSSU 提供的 Google 电子表格 来规划学习时间线,输入你的开始日期和每周预期学习时长。
加入 OSSU Discord 服务器,与全球学习者交流,每门课程都有专属讨论频道。
Fork GitHub 仓库到你自己的账户,完成课程后在旁边标记完成标志,将仓库作为你的学习看板。
推荐按照课程表从上到下的顺序学习(尤其是核心 CS 部分)。也可以将数学课与入门课同步进行。除非你确定已经掌握了某门课的内容,否则不建议跳过。
| 模块 | 主要课程 | 涵盖主题 |
|---|---|---|
| 核心编程 | 系统程序设计、编程语言、面向对象设计、软件架构 | 函数式编程、设计模式、单元测试、静态/动态类型 |
| 核心数学 | MIT 微积分(1A/1B/1C)、计算机科学数学 | 离散数学、数学证明、基础统计、O-表示法 |
| CS 工具 | MIT - The Missing Semester | 终端和Shell、Vim、版本控制、命令行环境 |
| 核心系统 | Nand to Tetris (I & II)、操作系统、计算机网络 | 计算机架构、汇编语言、操作系统、网络协议 |
| 核心理论 | 斯坦福 - 算法设计与分析(I & II) | 分治法、排序搜索、图搜索、动态规划、NP完全性 |
| 核心安全 | 网络安全基础、安全编码原则、漏洞识别 | 机密性、完整性、可用性、安全设计、防御编程 |
| 核心应用 | 数据库系列、机器学习、计算机图形学、软件工程 | 关系数据库、神经网络、OpenGL、敏捷方法 |
| 核心伦理 | 工程伦理、知识产权、数据隐私 | 社会影响、职业伦理、隐私和公民自由 |
并行编程、编译器、Haskell、Prolog、软件调试与测试
数字电路、计算机架构、计算机组织(MIT 6.004系列)
计算理论、计算几何、博弈论
Web安全、安全治理、数字取证、安全软件开发
线性代数、数值方法、形式逻辑、概率论
Fullstack Open、现代机器人、数据挖掘、云计算、数据科学、游戏开发
以下是该项目当前开放的 Issue(按评论数排序),共 14 条,标题已翻译为中文供参考。
| 编号 | 议题标题(中文翻译 / 英文原文) | 创建日期 | 评论 |
|---|---|---|---|
| #1055 |
RFC: 移除 Cybersecurity Fundamentals from curriculum
RFC: Remove Cybersecurity Fundamentals from curriculum |
2022-07-04 | 17 |
| #1013 |
RFC: Addition of Advanced AI
RFC: Addition of Advanced AI |
2022-03-26 | 17 |
| #1111 |
RFC: Replace Stanford Databases coures with CMU 15-445/645: 数据库 Systems
RFC: Replace Stanford Databases coures with CMU 15-445/645: Database Systems |
2022-12-08 | 13 |
| #799 |
Reorganize Advanced Curriculum
Reorganize Advanced Curriculum |
2020-09-27 | 13 |
| #1266 |
RFC: Replace 6.00.1x, PY4E, and CS50P for 6.100L Introduction to CS and Programming Using Python
RFC: Replace 6.00.1x, PY4E, and CS50P for 6.100L Introduction to CS and Programming Using Python |
2024-08-22 | 11 |
| #930 |
RFC: Uphold Curricular Categories
RFC: Uphold Curricular Categories |
2021-08-05 | 8 |
| #1121 |
RFC: Fleshing out Core 安全
RFC: Fleshing out Core Security |
2023-01-08 | 6 |
| #1060 |
RFC: [OSSU Meta] Provide a "First Year Experience" that's equivalent across all OSSU programs
RFC: [OSSU Meta] Provide a "First Year Experience" that's equivalent across all OSSU programs |
2022-07-13 | 6 |
| #1235 |
RFC: Provide Organized Instruction In Professional Presentation Skills
RFC: Provide Organized Instruction In Professional Presentation Skills |
2024-04-15 | 3 |
| #1147 |
RFC: Replace Haskell CIS (2016) with MOOC variant from Aalto University
RFC: Replace Haskell CIS (2016) with MOOC variant from Aalto University |
2023-03-31 | 4 |
| #1364 |
讨论 on updating this curriculum to new CS2023 guidelines
Discussion on updating this curriculum to new CS2023 guidelines |
2025-10-16 | 2 |
| #1081 |
Addition of extra courses that students might find useful from MIT ocw. With Inforamtion about these courses and prerequisites. Graduate and undergraduate courses. Useful for people who 想要 to broaden their knowledge even if you don't 添加 it to the curriculum. (long)
Addition of extra courses that students might find useful from MIT ocw. With Inforamtion about these courses and prerequisites. Graduate and undergraduate courses. Useful for people who want to broaden their knowledge even if you don't add it to the curriculum. (long) |
2022-10-06 | 3 |
| #1393 |
Coursera "This content is outside your preview access"
Coursera "This content is outside your preview access" |
2026-03-07 | 1 |
| #1394 |
RFC: Replace Game Theory Course with Free Alternative
RFC: Replace Game Theory Course with Free Alternative |
2026-03-09 | 0 |