哈佛 CS107 计算科学的系统开发
课程名称: 6.031 Software Construction
课程官网地址:2016年春,2021年秋
前置课程: 重要程度: 本课为MIT计算机专业必修课程
课程评点: 本课是以Java编程语言为基础,在2016年前课程名称为6.005,现在为6.031,课程资料在官网全部免费开放。
课程说明
① 课程介绍
本课程主要讲解软件开发的基本原则和技术,即如何编写没有Bug、易于理解和不断更新迭代的软件。课程主要的编程语言是Java,涉及的内容包括如何规范的编写代码、测试、抽象数据类型、面向对象的设计模式、并发编程、消息传递与共享并发以及防止死锁等,以及函数式编程等等。
② 课程大纲
开课老师精心编写了一本免费公开的在线教材,全书每年都有在更新,本课配套的公开视频是2016年春6.005,而如今这门课更名为6.031,你在看视频时可以参考2016年的教材以及最新的教材。
- 01: Static Checking
- 02: Basic TypeScript
- 03: Testing
- 04: Code Review
- 05: Version Control
- 06: Specifications
- 07: Designing Specifications
- 08: Mutability & Immutability
- 09: Avoiding Debugging
- 10: Abstract Data Types
- 11: Abstraction Functions & Rep Invariants
- 12: Interfaces, Generics, & Enums
- 13: Debugging
- 14: Recursion
- 15: Equality
- 16: Map, Filter, Reduce
- 17: Recursive Data Types
- 18: Regular Expressions & Grammars
- 19: Parsers
- 20: Callbacks & Graphical User Interfaces
- 21: Concurrency
- 22: Promises
- 23: Mutual Exclusion
- 24: Message Passing
- 25: Networking
- 26: Little Languages I
- 27: Little Languages II
- 28: Ethical Software Engineering
- 29: Team Version Control
③ 学习视频
网上公开的视频是2016年春的视频,当时课程名称为6.005,视频内容仍然值得学习参考,视频全长6个小时,共74节。
B站视频:【MIT公开课】6.005 软件构建