关键词:CS4挑战 MIT-6.087
0. 前言
今年过年没有回家,留在了上海。趁着这还有三四天的假期,把遗留的MIT-6.087的Pratical Programming in C的部分看完,并把之前看过的部分复习巩固一遍,也算是给新版CS4挑战起个头。看了一下这个Repo最早的commit的记录是2018年12月份,可以说是历史遗留问题了。借着再巩固一下C语言基本知识、数据结构以及Unix相关概念的想法,以本文作为契机对MIT-6.087课程进行回顾和总结。
1. 课程介绍
1.1 课程简介
MIT 6.087 Practical Programming in C是MIT 2010年的IAP(Independent Activities Period)课程。MIT的IAP课程总长四周,有点类似于上海大学的夏季小学期。但是MIT-6.087的内容还是很丰富的,感觉四周时间学习完所有的内容还是非常有挑战性的。直接摘录课程主页的课程介绍来看看这门课的内容。
This course provides a thorough introduction to the C programming language, the workhorse of the UNIX operating system and lingua franca of embedded processors and micro-controllers.
The first two weeks will cover basic syntax and grammer, and expose students to practical programming techniques. The remaining lectures will focus on more advanced concepts, such as dynamic memory allocation, concurrency and synchronization, UNIX signals and process control, library development and usage. Daily programming assignments and weekly laboratory exercises are required. Knowledge of C is highly marketable for summer internships, UROPs, and full-time positions in software and embedded systems development.
正如课程介绍所说,这门课程在我看来很不错的地方在于不仅仅介绍了C语言的基础用法和一些基本的数据结构,而且还在后面的章节涉及到了很多Unix的高级概念。而这些概念很多是计算机体系或者是操作系统的内容,这也是当初为什么我看完前面的C基础就没法继续推进下去的原因😂,自己当时对计算机体系和操作系统一无所知。
more >>