今日介紹一個非常經(jīng)典和極受歡迎的項目——開源社區(qū)大學(xué)(OSSU)基于在線學(xué)習(xí)資源的計算機科學(xué)自學(xué)課程computer-science,旨在提供完整的計算機科學(xué)教育。
自創(chuàng)建以來,該項目已經(jīng)積累了高達116k的Star。
- 項目地址:https://github.com/ossu/computer-science
- 開源協(xié)議:The MIT License
該課程是根據(jù)計算機科學(xué)本科專業(yè)的學(xué)位要求設(shè)計,并省去了通識教育(非計算機科學(xué))的要求,因為它假定大多數(shù)課程學(xué)習(xí)者已經(jīng)接受過計算機科學(xué)領(lǐng)域之外的教育。課程本身包括來自哈佛大學(xué)、普林斯頓、MIT等世界名校的最佳課程。
課程主要通過以下幾部分展開:
- 預(yù)先要求(Prerequisites)
- 計算機科學(xué)入門課程(Intro CS)
- 計算機科學(xué)核心課程(Core CS)
- 計算機科學(xué)高級課程(Advanced CS)
- 最終項目(Final Project)
課程各部分需要學(xué)習(xí)者滿足一定的條件:
- Core CS需要學(xué)習(xí)者學(xué)過高中數(shù)學(xué),包括代數(shù)、幾何和微積分。
- Advanced CS需要學(xué)習(xí)者已經(jīng)學(xué)習(xí)全部核心課程,知識儲備豐富,這樣才可以決定選修哪些高級課程。
- 高級系統(tǒng)(Advanced systems)需要學(xué)習(xí)者學(xué)過基礎(chǔ)物理課程(如高中AP物理)。
課程概覽
計算機科學(xué)入門課程(Intro CS),包括編程和計算機科學(xué)入門。
人人都可以學(xué)的Python專項課程
計算機科學(xué)概論和使用Python編程
計算機科學(xué)核心課程(Core CS),包括核心編程、核心數(shù)學(xué)、CS工具、核心系統(tǒng)、核心理論、核心安全、核心應(yīng)用和核心倫理。
核心編程課程,涵蓋函數(shù)編程、常見設(shè)計模式、單元測試、動態(tài)類型等。
核心數(shù)學(xué)課程,涵蓋離散數(shù)學(xué)、數(shù)學(xué)證明、基礎(chǔ)統(tǒng)計學(xué)和離散概率等。
核心工具課程。
核心系統(tǒng)課程,涵蓋程式化編程、門邏輯、計算機架構(gòu)、虛擬機等。
核心理論課程,涵蓋分而治之、隨機算法、最短路徑、貪婪算法等。
核心安全課程,包括保密性、安全設(shè)計、威脅與攻擊、網(wǎng)絡(luò)安全等。
核心應(yīng)用,涵蓋軟件規(guī)格、關(guān)系數(shù)據(jù)庫、數(shù)據(jù)建模、無監(jiān)督學(xué)習(xí)等。
核心倫理課程,涵蓋社會環(huán)境、職業(yè)道德、知識產(chǎn)權(quán)、隱私與公民自由等。
計算機科學(xué)高級課程(Advanced CS),包括高級編程、高級系統(tǒng)、高級理論、高級數(shù)學(xué)等課程。
高級編程課程,涵蓋目標(biāo)導(dǎo)向型編程、并行計算、目標(biāo)導(dǎo)向型分析與設(shè)計、大規(guī)模軟件架構(gòu)與設(shè)計。
高級系統(tǒng)課程,涵蓋數(shù)字信號、序列邏輯、處理器指令集、并行處理等。
高級理論課程,涵蓋圖靈機、事件驅(qū)動并發(fā)處理、分布式共享內(nèi)存、博弈樹等。
高級數(shù)學(xué)課程,涵蓋線性代數(shù)、數(shù)值方法、邏輯、概率論等。
最終項目(Final Project)課程如下,涵蓋了全棧開放、現(xiàn)代機器人學(xué)、大數(shù)據(jù)、數(shù)據(jù)挖掘、物聯(lián)網(wǎng)、云計算、數(shù)據(jù)科學(xué)、游戲設(shè)計與開發(fā)等。
更多課程詳細內(nèi)容請參閱原項目。