基本的計算機科學主題列表

電腦科學是資訊及運算理論基礎的研究以及電子計算機領域中的執行及應用,電腦科學中一個有名的主題分類系統是ACM 电脑分类系统,它是由美國電腦協會(英语:Association for Computing Machinery,简称ACM)所設計的,再電腦科學中一個基本的主題列表包括:

電腦科學的分支
數學基礎

  • 數理邏輯 - 布林邏輯以及其他邏輯查詢的方法;正統的證明方法的使用及限制。
  • 數論 - 在整數的簡單領域中找出證明及啟發的理論,像在人工智慧的測試領域中使用密碼學一樣。
  • 圖論 - 資料結構以及搜尋演算的基礎。
  • 博弈論 - 使用在人工智慧及模控學中。
  • 編碼理論 - 研究資訊傳輸過程中訊號編碼規律的數學理論。

計算理論

  • 自動機理論 - 解決問題的不同邏輯結構。
  • 可计算性理论 - 以現有的電腦模式來看什麼是可計算的,此由艾倫·麥席森·圖靈所證明並由其他人提供可計算及不可計算的可能性更加深入的說明。
  • 計算複雜性理論 - 計算課題上的基本界限(特別是時間及儲存空間)。
  • 量子電腦理論 -

演算法及資料結構

  • 演算法 - 用來解決許多問題的序列及並列的計算程序。
  • 資料結構 - 資料的組織及運作。

程式語言及編譯器

  • 編譯理論 - 以自動機理論為基礎設計編譯器的理論。
  • 程式語言 - 程式語言的分類學討論不同的編程范型像是物件導向程式設計之類的並探討其優缺點。
  • 程式語言理論

** 形式語義學 - 在問題的意義中做嚴謹的數學研究。
** 類型論 - 資料型態的形式分析以及瞭解程式特性所使用的型態 — 特別是程式安全。

並列, 並行, 及分散系統

  • 同做 - 模擬計算的理論及應用;在多工或多執行續環境裡的資料安全。
  • 分散式計算 - 在網路上使用多種計算裝置計算來完成一共同的目標或工作並藉此降低單一處理器的工作貢獻。
  • 並行計算 - 使用多個同做的執行緒來計算。

軟體工程

  • 形式方法 - 用數學的方法來描述及解釋軟體的設計。
  • 軟體工程 - 設計、發展及測試程式的理論與應用像是適當的工程應用。
  • 逆向工程 - 用來了解現有的軟體所採用的科學方法的應用。
  • 演算法設計 - 使用演算法理論的概念對真實的工作做設計的解決。
  • 程式設計 - 使用程式語言來完成演算法的應用。

電腦系統結構

  • 電腦系統結構 - 電腦系統的設計、組織、最佳化及確認,大部分是關於中央處理器及記憶體等子系統(以及連接這些子系統的匯流排)。
  • 作業系統 - 管理電腦程式以及提供基本功能使用的系統。

通訊及安全

  • 電腦網路 - 確實的通訊資料通過不同共享或專用的介面所發展的演算法及協定,通常包括錯誤的校正.
  • 電腦安全
  • 密碼學 - 從複雜性、可能性及數字理論來創造編碼的應用。

資料庫

  • 關係資料庫 - 是建立在關係模型基礎上的數據庫,借助於集合代數等數學概念和方法來處理數據庫中的數據。
  • 資料挖掘 - 在文件或資料庫中搜尋及處理資訊的演算法研究;跟資訊檢索很像.

人工智慧

  • 人工智慧 - 系統可以展示其智慧或行為的研究及執行。
  • 自動推理 - 解決的引擎像是用在Prolog,這種語言可以從規則資料庫中查詢出來的結果來產生一些步驟。
  • 機器人學 - 控制機器人行為的演算法。
  • 電腦視覺 - 從2D的圖片來辨識3D物件的演算法。
  • 機器學習 - 從輸入自動產生一組規則

電腦圖形學

  • 電腦圖形學 - 產生視覺影像及整合跟變更視覺及空間資訊的演算法,這些資訊是從真實的世界中擷取樣本來的。
  • 圖像處理 - 從影像透過計算來決定資訊。
  • 人機互動 - 人們使用電腦介面的研究及設計。

科學計算

  • 數值分析 - 數學問題的近似值解像是求根、數值積分、常微分方程解……等特殊函數的近似值。
  • 符號計算 - 用符號的方式來表示處理及解決通常也叫作電腦代數。
  • 計算物理學 - 大型不可分析的系統數我去。
  • 計算化學 - 理論化學的計算模式為了可以決定化學結構及特性。
  • 生物資訊學 - 用來維護、分析及儲存生物學資料的電腦科學,這些可以幫助解決像是蛋白質摺疊、函式預測及種系發生學等的生物學問題
  • 計算神經科學 - 神經生理學的計算模式.

電腦科學的歷史
電腦科學的行業

  • 程式設計師
  • 軟體設計師
  • 軟體測試

基本的電腦科學概念
核心基础概念
*算法与数据结构:作为计算机科学的核心,算法是解决问题的分步程序,而数据结构(如数组、链表、树和图)则是组织和存储数据的方法,以便这些算法能够高效地使用它们。
*计算理论: 该领域从数学角度探索计算机的基本能力和局限性。它探讨哪些问题可被解决(可计算性理论)以及解决这些问题所需的时间或内存(复杂度理论)。
*计算机系统结构:该领域关注计算机系统的内部结构与组织。它涵盖CPU、内存(RAM)和存储等组件的设计方式,以及它们在低级别上的交互方式,包括数据在二进制中的表示形式。
*编程语言与范式:该领域涉及用于编写计算机指令的工具。它包括不同的编程范式——如过程式、面向对象和函数式编程——以及各种语言的语法和语义(如Python、C++、Java)。

系统概念与应用概念
*操作系统(OS):操作系统是管理计算机硬件和软件资源的核心软件。关键概念包括进程管理、内存管理、文件系统和并发性。
*计算机网络:该领域涵盖使计算机能够相互通信的原则和协议。核心主题包括TCP/IP模型、路由和互联网架构。
*数据库:该领域专注于高效可靠地存储、组织和检索海量数据的原则。其中包括关系模型、SQL等查询语言以及新兴的NoSQL系统等概念。
*人工智能(AI)与机器学习(ML):一个致力于创建能够执行需要人类智能任务的系统的广泛领域。机器学习作为人工智能的子领域,专注于开发能够从数据中学习模式并进行预测的算法。
*软件工程:这是设计、开发、测试和维护软件的系统化方法。其中包括软件开发生命周期、版本控制和测试方法等实践。
*计算机图形学:研究利用计算机创建和处理视觉图像的学科,涵盖从渲染2D/3D图像到动画和模拟的各个方面。
*密码学与安全:该领域致力于保障信息和系统的安全。密码学提供安全通信的技术,而更广泛的安全领域则涵盖防御系统免受攻击和漏洞的影响。

其他概念
*抽象化
*演算法
*數組
*自動機理論
*大O符號
*類 (電腦科學)
*閉包
*編譯器
*計算複雜性理論
*程式設計
*控制流
*資料結構
*資料型別
*有限狀態自動機
*流程圖
*形式方法
*函數程式語言
*停機問題
*指令式編程
*資訊隱藏概論
*繼承 (電腦科學)
*不變量
*迭代
*Λ演算
*列表
*邏輯編程
*矩陣 (電腦科學)
*物件 (電腦科學)
*物件導向程式設計
*語法解析
*π-calculus
*多型
*程序化語言
*程式語言理論
*形式語義學
*遞歸 (電腦科學)
*正則表達式
*字串
*子程序
*系統程式
*樹 (數據結構)
*圖靈機

電腦科學的一些人
參見

  • 计算机科学术语表
  • 認知科學
  • 人工智能概述

评论 (0)

  • 还没有评论,来抢沙发吧。