导航菜单

GitHub

loading

“ MIT是所有理工科学子的圣殿,素以顶尖的工程学和计算机科学而著名。“ 最初打算总结一份MIT的计算课程列表,没想到后来越看越多,MIT、CMU、PKU、THU....让你看到头秃...

👉 推荐:如果小伙伴访问Github仓库速度较慢,可以访问码云,我在码云上也放了一份,同步更新

📙 仓库贡献指南

点击右上角fork按钮,将项目fork到自己的Github账户里。使用git clone将项目克隆到本地。git clone https://github.com/forthespada/Awsome-Courses.git用编辑器打开进行贡献,然后提交到fork的仓库。code .git add .git commit -m "What did you do?"git push origin master提交Pull request编程资源分享

学习计算机这么多年以来,慢慢的也收集到一些不错的学习资源,现在免费分享一下。

1、我自己的学习笔记网站 从校园->职场多年的计算机自学总结,包括但不限计算机基础知识、算法、前端后端、校招&社招、互联网一线大厂中的工作体验等记录,坚持学习,持续成长! 传送门 2、各类精品编程资源分享

传送门

速来!浙江大学CS本科生课程开源了大格局!清华大学计算机系课程攻略共享计划!1000+计算机经典PDF电子书Java/C++/Golang等版本的LeetCode算法题解侯捷老师C++&陈硕老师Linux网络编程全套视频阿里、百度、字节、腾讯等互联网一二线中厂校招面试PDF合集计算机经典图书TOP50 PDF版本合集Github 上的各种硬核技术学习路线思维导图~图解操作系统、网络、计算机组成PDF下载!那些让你起飞的计算机基础知识~后端必备!SQL语法速成手册!~10套简历模板!Word格式,白嫖可用~《Pro Git 中文版》PDF,带你学会git的操作~....良心推荐

如果你挑花眼了,不知道该学哪个?

过来人推荐你去看看本页面的Crash Course Computer Science(计算机科学速成课)、哈佛大学的CS-50、MIT的 6.828 、MIT 的6.824以及清华大学的OS课程。

这5门课程对于大多数人都绝对受用!

国内优秀编程视频

其实国内也有很多优秀编程视频,以前阿秀就曾经总结过三期,今天一起分享出来吧!

第一期:点击直达

第一期

第二期:点击直达

第二期

第三期:点击直达

第三期

入门科目Crash Course Computer Science,计算机科学速成课

这门课有很多地方都适合小白,比如视频内容精炼但不冗余,该介绍到的都介绍到了,如果你担心这门课程过于简单,那你就大错特错了。

从继电器讲到真空管,最后再到晶体管和集成电路;从最原始的纸袋打孔到机器语言的出现,再到汇编语言和高级语言,如Java、C++等;从与或非的逻辑运算到CPU运算是如何处理的;还有机器学习、深度学习以及人工智能等最新领域的介绍

如果说唯一美中不足的点,那就是其中部分环节语速过快,对于大多数国人来说看起来比较吃力,建议英语不太好的同学看的时候调成0.75倍速去观看。

这门课并不会教你如何从0开始学会编程,而是通过不断的抽象从底层到上层进行讲解,从高层次上纵览一系列的计算机话题。

img

在这期间也会穿插着很多有意思的历史故事,比如在存储器的时候就会以算盘为楔子引入,告诉你算法大约出现在公元前2500年。

img

适当穿插历史故事,确保小白不会枯燥&中途放弃,当讲到计算机网络的时候,则是以动图的形式告诉你交换机上是如何工作的;

img

交换机是如何工作的

只能说看起来不是一般的爽,而是特别的很爽。

地址:https://www.bilibili.com/video/BV1EW411u7th?p=28&vd_source=3fc05c3b7f095e12a12ea9850e2e0a35

CS-50

哈佛大学公开课:计算机科学cs50是经典的计算机入门课程,他还有一个广为人知的外号:计算机速成课。

只要是正常高中毕业的同学应该都能听懂,应该算是面向零基础的课程。

这门课一共20集,一天看一集也就只需要20天,这门课的内容包括基本的计算机知识以及基础算法,常见的编程语言等等,还会探讨最新的计算机科学领域的成果,课程发散性思维强。

多说一句,CS50课程的讲课形式让人耳目一新,真正做到了“快乐学习”。。

地址:https://open.163.com/newview/movie/courseintro?newurl=%2Fspecial%2Fopencourse%2Fcs50.html

6.0001: Introduction to Computer Science and Programming in Python

该课程适合很少或根本没有编程经验的学生。它旨在让学生了解计算在解决问题方面可以发挥的作用,并帮助所有专业的学生都有理由相信他们有能力编写小程序并使他们能够完成有用的目标。

值得注意的是该课程使用 Python 3.5 编程语言。

地址:https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-0001-introduction-to-computer-science-and-programming-in-python-fall-2016/

6.821 计算机程序的构造和解释

课程地址:Structure and Interpretation of Computer Programs、 6.821 Programming Languages (Fall 2002)

SICP这门课以前在很长一段时间都是MIT入门的第一课,配套的教材SICP《计算机程序的构造和解释》也一直被认为是程序设计的经典著作,其中研究生课程MIT 6.821 的参考书也是这本书。

6.042: Mathematics for Computer Science

本课程提供面向计算机科学和工程的离散数学的交互式介绍。主题覆盖范围大致分为三部分:

数学的基本概念:定义,证明,集合,函数,关系。离散结构:图形,状态机,模块化算术,计数。离散概率理论。

地址:https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-spring-2015/

基础科目

基础课程大多是位本科生开设的。

6.004: Computation Structures

本课程介绍了数字系统和计算机架构的设计。强调以高级硬件语言表达所有硬件设计并综合设计,主题包括组合电路和顺序电路、可编程硬件指令集抽象、单周期和管道处理器实现、多级内存层次结构、虚拟内存、异常和 I/O 以及并行系统。

地址:https://6004.mit.edu/web/spring20

6.006: Introduction to Algorithms

本课程介绍了计算问题的数学建模。它涵盖了用于解决这些问题的常见算法,算法范例和数据结构。该课程强调算法与编程之间的关系,并介绍针对这些问题的基本性能指标和分析技术。

地址:https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/

6.009: Fundamentals of Programming

本课程介绍编程的基本概念。旨在培养将基本方法从编程语言应用于抽象问题的技能。主题包括编程和 Python 基础知识、计算概念、软件工程、算法技术、数据类型和递归。实验组件包括软件设计、施工和设计实施。

地址:https://py.mit.edu/spring20

6.004 计算结构

课程地址:Computation Structures (Spring 2017)

6.005 软件构建(Java)

课程地址:Software Construction (Spring 2016)

Java的基础课程,可以和6.031一起学习。

6.006 算法导论

课程地址:Introduction to Algorithms (Fall 2011)

6.008 接口技术导论

课程地址:Introduction to Inference(2014)

6.009 程序设计基础

课程地址:Fundamentals of Programming

6.033 计算机系统

课程地址:Computer System Engineering (Spring 2018)

6.034 人工智能

课程地址:Artificial Intelligence (Fall 2010)、Artificial Intelligence (Spring 2005)

6.041 概率系统分析和应用概率论

课程地址:Probabilistic Systems Analysis and Applied Probability (Fall 2010)、Probabilistic Systems Analysis and Applied Probability (Fall 2013)

6.042J 计算机科学中的数学(离散数学)

课程地址:Mathematics for Computer Science (Spring 2015)

进阶科目

进阶科目则是为了大三大四以及研一同学设立。

以下课程只需要选择两三门课来学习就可以了。

6.031 软件构建(Java)

课程地址:Software Construction

这门课主要学的是Java,没有参考书,课程

相关推荐: