2.0 KiB
2.0 KiB
CS61A: Structure and Interpretation of Computer Programs
课程简介
- 所属大学:UC Berkeley
- 先修要求:无
- 编程语言:Python,Scheme,SQL
- 课程难度:🌟🌟🌟
- 预计学时:50小时
伯克利CS61系列的第一门课程,也是我的Python入门课。
CS61系列是伯克利CS专业的入门课,其中:
- CS61A:强调抽象,让学生掌握用程序来解决实际问题,而不关注底层的硬件细节。
- CS61B:注重算法与数据结构以及大规模程序的构建,学生会用Java语言结合算法与数据结构的知识来构建千行代码级别的大型项目(一个简易的谷歌地图,一个二维版的Minecraft)。
- CS61C:关注计算机体系结构,让学生理解高级语言(例如C)是如何一步步转换为机器可以理解的01串并在CPU执行的,学生将会学习RISC-V架构并自己用Logism实现一个CPU。
CS61B和CS61C在本书中均有收录。
回到CS61A,注意这不仅仅是一门编程语言课,而是会深入到程序构造与运行的原理。最后你将在第4个Project中用Python实现一个Scheme的解释器。此外,抽象将是这门课的一大主题,你将学习到函数式编程、数据抽象、面向对象等等知识来让你的代码更易读,更模块化。当然,学习编程语言也是这门课的一大内容,你将会掌握Python、Scheme和SQL这三种编程语言,在它们的学习和比较中,相信你会拥有快速掌握一门新的编程语言的能力。
课程资源
资源汇总
我在学习这门课中用到的所有资源和作业实现都汇总在这个Github仓库中。