CS Learn
Table of Contents
数学
- 数学分析
- 线性代数,俗说矩阵
- 离散数学
- 概率论
专业课
- [UCB] CS61A: Structure and Interpretation of Computer Programs
- [UCB] CS61B: Data Structures and Algorithms
- [UCB] CS61C: Great Ideas in Computer Architecture
- [CMU] 15-213: CSAPP
- [MIT] S6.S081: Operating System Engineering
- [UCBS] GAMES101: 现代计算机图形学入门
- [Stanford] CS336: Language Modeling from Scratch
- [UCB] CS189: Introduction to Machine Learning
Data Science
UCB Data 8: Foundations of Data Science
Intro
- university: UC Berkeley
- prerequisite: None
- programming languages: python
- difficulty: 2
- estimated study time: 32h
Resource
- website: https://www.data8.org/
- video: refer to the website
- materials: https://github.com/data-8
Web Development
MIT Web Development Crash Course
Intro
- university: MIT
- prerequisite: master at least one programming language.
- programming languages: JavaScript/HTML/CSS/NoSQL
- difficulty: 3
estimated study time: …
This lesson is very clear, but the workshop assignment is lack of direction, far away from the lesson. This lesson is not suitable for those who is lack of experience with web development, because you can not ask questions and get answer immediately as students really in the classroom.
Resource
- website: https://weblab.mit.edu/schedule
- video: refer to the website
- materials: https://github.com/weblab-workshops
- workshop: https://github.com/weblab-workshops/catbook-react
- homework: https://weblab.is/hwn
Programming Languages
C++ CPP
学习资源总结:
- cpp reference:全面的 api 手册。
- 谷雨同学的 C++ 教程:入门现代 C++。
- hacking cpp:现代 C++ 百科全书,大量图示。
C++ Primer Plus
- prerequisite: None
- difficulty: 1
- estimated study time: …
It is only suitable for newbie. If you already learn C programming language, it is filled with nonsense words.
TODO C++ Primer
- prerequisite: None
- difficulty: >3
- estimated study time: …
If you going to work with C++, this book will help you a lot.
C++ Youtube
- author: The Cherno
- prerequisite: had better to have learned one programming languages.
- difficulty: 3
- estimated study time: 30h
Python
CS 61A: Structure and Interpretation of Computer Programs
- author: Hal Abelson
- prerequisite: None
- website: https://cs61a.org/
- difficulty: 2
- estimated study time: 20h
JavaScript
Eloquent JavaScript
- author: Marijn Haverbeke
- prerequisites: know basic concepts of programming
- website: https://eloquentjavascript.net/
- difficulty: …
This is an interactive book, like jupyter for python.
图形学
- games202