2015 年 Stackoverflow 進行的調查中顯示有 41.8% 的開發(fā)者自學程序開發(fā)。不難想象他們的學習資源一定是各式各樣的。然而,相比如網(wǎng)絡上各式各樣的不完整、甚至不可靠的「學習編程指南」,完整的大學計算機科學本科教育無疑是更好的選擇。
麻省理工學院公開課(MIT OCW)所提供的學習資源毫無疑問是最優(yōu)秀的學習資源之一。最近我們收錄了一批 MIT OCW 上的課程。然后依據(jù) MIT 提供的計算機科學及工程(Computer Science and Engineering) 課程路線圖,制作了一個課程專題:MIT 計算機科學課程自學攻略 >>
MIT 官方的計算機科學及工程專業(yè)課程路線圖如下:

也可以去 MIT 網(wǎng)站 了解更多的信息。
如果打算自學 MIT 的課程,可以參考一下以下 tips。
TIPS: - 學習 8.02 需要先修 8.01。另外由于這個原因,學校為了避免學生學習這門課程時私自請教教授,該課程的視頻已經在 MIT OCW 上下線。
- 部分課程,例如 18.01 有 MIT 重新編制的版本,但是建議按照舊版本的課程來學習,舊版本的習題比較全,但是可能需要購買教材。建議盡量購買教材。
- diff enqs 和 linear algebra 中的「or」 表示二選一,6.01與8.02 中的「conreq」(corequisite)表示課程需要同時學習。數(shù)學在計算機科學中還是很重要的,比如最近熱門的機器學習,對 Calculus、Linear Algebra、Probability 都有要求。
- 在 MIT,EE(電機工程)、CS(計算機科學) 是一個系,所以在基礎課程 6.01、6.02 會有 EE 的內容,個人建議也一并學習。如果不打算學習 EECS 中 EE 的部分,可以直接學習6.00,可以減少兩門物理課程 8.01、8.02 以及 6.01,6.02 的負擔。
- 在比較后面的課程中,比如 6.004、6.005,課程沒有授課視頻,不過課程的講義(Lecture Notes)非常的完整。另外,6.004 有 MOOC 版本,分別是:
- 建議從 YouTube 上觀看課程的視頻,播放器功能比 MIT OCW 上的豐富,可以調節(jié)播放速度等等。
- 可以多去 MIT 本校的課程網(wǎng)站獲取更多的學習資源,比如 18.06 (Linear Algebra)這門課程,作業(yè)系統(tǒng)已經線上化了,并且使用 Julia 語言:

- 學習一門課程的時候建議閱讀包括 syllabus、calendar 以及預覽一下作業(yè)、課程內容,熟知課程、作業(yè)的安排,比如 18.06 課程 Problem Set 1 的作業(yè)安排:

有 deadline,有作業(yè)內容的說明,這樣也可以比較清楚的知道自己學到哪里可以開始做這些作業(yè),什么時候應該完成。
- 有些課程是有多個選項的,比如 Physics I 這門課程,有這門多個版本,可以看看課程說明,然后選擇適合自己的版本。

- edX 上也有很多的課程,與這些課程相對應,但是難度上可能有些降低,如果能力夠好可以優(yōu)先選擇 MIT OCW 上的課程,充分利用公開的信息(本科課程要求、roadmap等等都可以搜索到)獲得更好的學習體驗及成果。
|