基本的電腦科學主題列表
外觀
電腦科學是資訊及運算理論基礎的研究以及電子計算機領域中的執行及應用,電腦科學中一個有名的主題分類系統是ACM 電腦分類系統,它是由美國電腦協會(英語:Association for Computing Machinery,簡稱ACM)所設計的,再電腦科學中一個基本的主題列表包括:
電腦科學的分支
[編輯]數學基礎
[編輯]- 數理邏輯 - 布林邏輯以及其他邏輯查詢的方法;正統的證明方法的使用及限制。
- 數論 - 在整數的簡單領域中找出證明及啟發的理論,像在人工智能的測試領域中使用密碼學一樣。
- 圖論 - 資料結構以及搜尋演算的基礎。
- 博弈論 - 使用在人工智能及模控學中。
- 編碼理論 - 研究資訊傳輸過程中訊號編碼規律的數學理論。
計算理論
[編輯]- 自動機理論 - 解決問題的不同邏輯結構。
- 可計算性理論 - 以現有的電腦模式來看什麼是可計算的,此由艾倫·麥席森·圖靈所證明並由其他人提供可計算及不可計算的可能性更加深入的說明。
- 計算複雜性理論 - 計算課題上的基本界限(特別是時間及儲存空間)。
- 量子電腦理論 -
演算法及資料結構
[編輯]程式語言及編譯器
[編輯]並列, 並行, 及分散系統
[編輯]- 同做 - 模擬計算的理論及應用;在多工或多執行續環境裏的資料安全。
- 分散式計算 - 在網絡上使用多種計算裝置計算來完成一共同的目標或工作並藉此降低單一處理器的工作貢獻。
- 並行計算 - 使用多個同做的線程來計算。
軟件工程
[編輯]- 形式方法 - 用數學的方法來描述及解釋軟件的設計。
- 軟件工程 - 設計、發展及測試程式的理論與應用像是適當的工程應用。
- 逆向工程 - 用來了解現有的軟件所採用的科學方法的應用。
- 演算法設計 - 使用演算法理論的概念對真實的工作做設計的解決。
- 程式設計 - 使用程式語言來完成演算法的應用。
電腦系統結構
[編輯]通訊及安全
[編輯]資料庫
[編輯]人工智能
[編輯]- 人工智能 - 系統可以展示其智能或行為的研究及執行。
- 自動推理 - 解決的引擎像是用在Prolog,這種語言可以從規則資料庫中查詢出來的結果來產生一些步驟。
- 機械人學 - 控制機械人行為的演算法。
- 電腦視覺 - 從2D的圖片來辨識3D物件的演算法。
- 機器學習 - 從輸入自動產生一組規則
電腦圖學
[編輯]科學計算
[編輯]- 數值分析 - 數學問題的近似值解像是求根、數值積分、常微分方程解……等特殊函數的近似值。
- 符號計算 - 用符號的方式來表示處理及解決通常也叫作電腦代數。
- 計算物理學 - 大型不可分析的系統數我去。
- 計算化學 - 理論化學的計算模式為了可以決定化學結構及特性。
- 生物資訊科學 - 用來維護、分析及儲存生物學資料的電腦科學,這些可以幫助解決像是蛋白質摺疊、函數預測及種系發生學等的生物學問題
- 計算神經科學 - 神經生理學的計算模式.
電腦科學的歷史
[編輯]電腦科學的行業
[編輯]基本的電腦科學概念
[編輯]核心基礎概念
[編輯]- 演算法與數據結構:作為電腦科學的核心,演算法是解決問題的分步程式,而數據結構(如陣列、鏈結串列、樹和圖)則是組織和儲存數據的方法,以便這些演算法能夠高效地使用它們。
- 計算理論: 該領域從數學角度探索電腦的基本能力和局限性。它探討哪些問題可被解決(可計算性理論)以及解決這些問題所需的時間或主記憶體(複雜度理論)。
- 電腦系統結構:該領域關注電腦系統的內部結構與組織。它涵蓋CPU、主記憶體(RAM)和儲存等組件的設計方式,以及它們在低階別上的互動方式,包括數據在二進制中的表示形式。
- 程式語言與範式:該領域涉及用於編寫電腦指令的工具。它包括不同的編程範式——如程序式、物件導向和函數式程式設計——以及各種語言的語法和語意(如Python、C++、Java)。
系統概念與應用概念
[編輯]- 作業系統(OS):作業系統是管理電腦硬件和軟件資源的核心軟件。關鍵概念包括行程管理、主記憶體管理、檔案系統和並行性。
- 電腦網絡:該領域涵蓋使電腦能夠相互通訊的原則和協定。核心主題包括TCP/IP模型、路由和互聯網架構。
- 資料庫:該領域專注於高效可靠地儲存、組織和檢索海量數據的原則。其中包括關係模型、SQL等查詢語言以及新興的NoSQL系統等概念。
- 人工智能(AI)與機器學習(ML):一個致力於建立能夠執行需要人類智能任務的系統的廣泛領域。機器學習作為人工智能的子領域,專注於開發能夠從數據中學習模式並進行預測的演算法。
- 軟件工程:這是設計、開發、測試和維護軟件的系統化方法。其中包括軟件開發生命週期、版本控制和測試方法等實踐。
- 電腦圖學:研究利用電腦建立和處理視覺圖像的學科,涵蓋從渲染2D/3D圖像到動畫和模擬的各個方面。
- 密碼學與安全:該領域致力於保障資訊和系統的安全。密碼學提供安全通訊的技術,而更廣泛的安全領域則涵蓋防禦系統免受攻擊和漏洞的影響。