国内外优秀的计算机软件专业在线课程推荐
博主从高中时代即关注mooc,大学前两年也体验了不少知名在线课程,收益颇丰。这些课程或来自于中国大学Mooc平台、学堂在线,或是Coursera平台,也有部分为课堂录播课程。这些课程大多体系完善,由知名老师授课,同时配有完整的实验内容,完整跟下来一节对个人能力将会有不少提升。
在此根据专业培养方案一一列出,以飨同好。
为便于分类,再此大体将计软专业四年课程划分为 编程语言,数学基础,专业核心,专业选修四部分。其中编程语言为大多数专业核心课程的和专业选修课程的基础。数学课程部分较为独立,即使没有完整学会也不影响对其他课程的学习。
本篇目录主要为各课程所对应的课程链接,教材,关于该课程的推荐原因,详细介绍,配套资料,书籍推荐等可参考下文中给出的博文链接。
课程方案主要参考了网易云课堂的顶尖中文大学计算机专业课程体系,部分参见了本校的专业培养方案。
部分课程链接参考了网易云课堂体系,但网易云课堂体系15年过后就没更新过课程了,这五年来国内外涌现了不少优质在线课程
★★★☆☆:一般意义上的好课,但知名度较低,同时缺少实验、练习等配套资料
★★★★☆:一般意义上的好课,缺少实验或缺少习题训练
★★★★★:知名度较高的好课,拥有完善的配套资料——教材、实验、习题等
★★★★★★★:极高水平的课程,拥有特色实验或习题,培养体系完善,知名度高
数学基础中,必修的主要课程为高等数学,线性代数,概率论与数理统计,离散数学,可选部分为数学分析,近世代数,密码学基础等。
高等数学
| 课程名称 | 开课学校/机构 | 授课教师 | 配套教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 微积分 | 浙江大学 | 苏德矿 | 中国大学mooc | 待补充 | ★★★★★ |
线性代数
| 课程名称 | 开课学校/机构 | 授课教师 | 配套教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 线性代数 | MIT | 吉尔伯特·斯特朗 | 线性代数第五版 | 网易公开课 | 待补充 | ★★★★★ |
| 线性代数 | 清华大学 | 马辉、徐帆 | 线性代数第五版 | 学堂在线 | 待补充 | ★★★☆☆ |
概率论与数理统计
| 课程名称 | 开课学校/机构 | 授课教师 | 配套教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 概率论与统计学 | 厦门大学 | 洪永淼 | 概率论与统计学 | b站链接 | 待补充 | ★★★★★ |
离散数学
| 课程名称 | 开课学校/机构 | 授课教师 | 配套教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 离散数学 | 电子科技大学 | 王丽杰 | 中国大学Mooc | 待补充 | ★★★★☆ | |
| 离散数学概论 | 北京大学 | 陈斌 | 中国大学Mooc | 待补充 | ★★★★☆ |
数学分析
| 课程名称 | 开课学校/机构 | 授课教师 | 配套教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 工科数学分析 | 北京航空航天大学 | 杨小远 | 中国大学Mooc | 待补充 | ★★★★★ |
数学分析,近世代数,密码学基础尚未整理,可以参考网易云的部分
编程语言已经有大量优秀书籍,因此本处不给出课程配套教材,推荐使用国内外知名教材作为替代
C语言
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 程序设计入门——C语言 | 浙江大学 | 翁恺 | C primer plus | 中国大学Mooc | 待补充 | ★★★★★ |
Java
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 零基础学Java语言 | 浙江大学 | 翁恺 | head first Java | 中国大学Mooc | 待补充 | ★★★★★ |
| 面向对象程序设计——Java语言 | 浙江大学 | 翁恺 | Java核心技术 | 中国大学Mooc | 待补充 | ★★★★★ |
| Java语言 | 清华大学 | 郑莉 | Java核心技术 | B站链接 | 待补充 | ★★★★☆ |
C++
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| C++面向对象程序设计 | 北京大学 | 郭炜 | 暂无 | 中国大学Mooc | 待补充 | ★★★★☆ |
| 面向对象程序设计-C++ | 浙江大学 | 翁恺 | 暂无 | 网易云课堂 | 待补充 | ★★★★★ |
| C++程序设计(面向对象进阶) | 北京邮电大学 | 崔毅东 | 《C++程序设计》(中文版·第3版),[美]梁勇 | 中国大学MOOC | 待补充 | ★★★★★ |
Python
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| Python语言程序设计 | 北京理工大学 | 嵩天 | python编程 | 中国大学Mooc | 待补充 | ★★★★☆ |
| Introduction to Computer Science and Programming Using Python | MIT | John Guttag | 暂无 | Edx | 待补充 | ★★★★★ |
| CS61A | UCB | 课程主页 | 待补充 | ★★★★★★★ |
计算机导论
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| CS50's Introduction to Computer Science | HARVARD | David J.Malan | 暂无 | Edx | 待补充 | ★★★★★★★ |
| Introduction to Computer Science and Programming Using Python | MIT | John Guttag | 暂无 | Edx | 待补充 | ★★★★★ |
| 计算机专业导论 | 哈尔滨工业大学 | 战德臣 | 暂无 | 中国大学Mooc | 待补充 | ★★★★☆ |
| CS61A | UCB | 课程主页 | 待补充 | ★★★★★★★ |
数据结构
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 数据结构 | 清华大学 | 邓俊辉 | 数据结构:C++语言版 | 学堂在线 | 暂无 | ★★★★★★★ |
| 数据结构 | 浙江大学 | 陈越、何钦铭 | 暂无 | 中国大学Mooc | 暂无 | ★★★★★ |
| CS 61B:Data Structures | UCB | 暂无 | CS61B | 暂无 | ★★★★★★★ |
计算机组成原理
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 计算机组成原理 | 哈尔滨工业大学 | 刘宏伟 | 计算机组成与设计 | 中国大学Mooc | 暂无 | ★★★★★ |
| 计算机硬件系统设计 | 华中科技大学 | 谭志虎 | 计算机组成原理实践教程 | 中国大学Mooc | 暂无 | ★★★★★★★ |
| 计算机组成原理 | 华中科技大学 | 秦磊华、谭志虎 | 计算机组成与设计 | 中国大学Mooc | 暂无 | ★★★★☆ |
| CS61C | UCB | 计算机组成与设计 | 课程主页 | 暂无 | ★★★★★★★ | |
| Computation Structures | MIT | 课程主页 | ★★★★★ |
操作系统
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| MIT6.s081:Operating System Engineering | MIT | Adam Belay | xv6book | 课程网址 | 暂无 | ★★★★★★★ |
| 操作系统 | 清华大学 | 向勇、陈渝 | 操作系统精髓与设计原理 | 学堂在线 | 暂无 | ★★★★★ |
| 操作系统 | 哈尔滨工业大学 | 李治军 | Linux内核完全剖析 | 中国大学Mooc | 暂无 | ★★★★★ |
| 操作系统 | 南京大学 | 蒋炎岩 | 操作系统导论 | 课程主页 | 暂无 | ★★★★★★★ |
计算机网络
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 计算机网络 | 哈尔滨工业大学 | 李全龙 | 计算机网络:自顶向下方法 | 中国大学Mooc | 暂无 | ★★★★★ |
| CS 144: Introduction to Computer Networking, Fall 2020 | Stanford | Keith Winstein | 计算机网络:自顶向下方法 | 课程主页 | 暂无 | ★★★★★ |
数据库
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 数据库系统 | 哈尔滨工业大学 | 战德臣 | 数据库系统概念 | 中国大学Mooc | 暂无 | ★★★★★ |
| CMU15-445:DATABASE SYSTEMS | CMU | Andy Pavlo | 数据库系统概念 | 课程主页 | 暂无 | ★★★★★★★ |
| MIT 6.830:Database Systems | MIT | Samuel Madden | 数据库系统概念 | 课程主页 | 暂无 | ★★★★★★★ |
算法设计与分析
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 算法设计与分析 | 北京大学 | 屈婉玲 | 算法设计与分析 | 中国大学Mooc | 待补充 | ★★★★☆ |
| 6.006: Introduction to Algorithms | MIT | Erik Demaine | 算法导论 | 课程主页 | 待补充 | ★★★★★ |
| 算法 | Princeton | Robert Sedgewick | 算法 | Coursera | 待补充 | ★★★★★ |
编译原理
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 编译原理 | 国防科技大学 | 王挺 | 编译原理 | 中国大学Mooc | 待补充 | ★★★★★ |
| 编译原理 | 中国科学技术大学 | 华保健 | 编译器工程 | 网易云课堂 | 待补充 | ★★★★★ |
| CS143:compilers | stanford | Fredrik Kjolstad | 编译原理 | 课程主页 | 待补充 | ★★★★★ |
面向对象分析与设计
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 面向对象分析与设计 | 华东师范大学 | 姜宁康 | UML模式和应用 | 中国大学Mooc | 待补充 | ★★★★☆ |
| OOAD&JAVAEE | 厦门大学 | 邱明 | UML模式和应用 | b站链接 | 待补充 | ★★★☆☆ |
计算机系统(ICS)
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 15-213:Intro to Computer Systems | CMU | Randy Bryant | 深入理解计算机系统 | B站链接 | 待补充 | ★★★★★★★ |
| 计算机系统基础 | 南京大学 | 袁春风/蒋炎岩 | 计算机系统基础 | 中国大学Mooc 课程主页 | 待补充 | ★★★★★★★ |
未完待续
机器学习
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| CS229: Machine Learning | stanford | 吴恩达 | 暂无 | 课程主页 coursera | 待补充 | ★★★★★★★ |
| 机器学习 | 国立台湾大学 | 李宏毅 | 暂无 | 课程主页 | 待补充 | ★★★★★ |
深度学习
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 深度学习 | deeplearning.ai | 吴恩达 | 暂无 | Coursera | 待补充 | ★★★★★★★ |
| CS213n:卷积神经网络 | stanford | 李飞飞 | 暂无 | 课程主页 | 待补充 | ★★★★★ |
| CS224n:自然语言处理 | stanford | Chris Manning | 暂无 | 课程主页 | 待补充 | ★★★★★ |
人工智能导论
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 人工智能与信息社会 | 北京大学 | 陈斌 | 暂无 | 中国大学Mooc | 待补充 | ★★★★★ |
计算机图形学
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 现代计算机图形学入门 | GAMES | 闫令琪 | 暂无 | B站链接 | 待补充 | ★★★★★★★ |
| 计算机图形学 | 华中科技大学 | 万琳 | 暂无 | 中国大学Mooc | 待补充 | ★★★★★ |
数据挖掘
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 数据挖掘-理论与算法 | 清华大学 | 袁博 | 暂无 | 学堂在线 | 待补充 | ★★★★★ |
分布式系统
| 课程名称 | 开课学校/机构 | 授课教师 | 推荐教材 | 课程链接 | 详细介绍 | 推荐指数 |
|---|---|---|---|---|---|---|
| 6.824: Distributed Systems | MIT | Robert Morris | 数据密集型应用系统设计 | 课程主页 | 待补充 | ★★★★★★★ |
待补充
