官术网_书友最值得收藏!

本書遵循自底向上的計算機科學研究方法,先從讀者有親身體驗的主題開始(如計算機硬件),繼而引出比較抽象的主題(如算法復雜性和可計算性)。結果是,我們的學習遵循這樣的模式:隨著我們對主題理解的深入,我們構建的抽象工具會越來越大。

我們先學習與設計和構造執行算法的機器有關的主題。在第1章(數據存儲)中,我們學習信息是如何編碼和存儲在現代計算機中的。在第2章(數據操控)中,我們研究簡單計算機的內部基本操作。雖然部分學習內容涉及技術,但總體上是獨立于具體技術的。也就是說,像數字電路設計、數據編碼與壓縮系統,以及計算機體系結構這樣的主題,與很多技術都相關,并且不管未來技術的發展方向如何,它們的相關性都不會變。

在第3章(操作系統)中,我們學習控制一臺計算機總體操作的軟件,這種軟件稱為操作系統。操作系統控制機器與其外部世界之間的接口:保護機器及其內部存儲數據不被非授權用戶訪問;允許計算機用戶請求執行各種程序;協調內部活動,以滿足用戶請求。

在第4章(組網及因特網)中,我們將學習計算機是如何連接成計算機網絡的,網絡又是如何連接成互聯網的。這些知識涉及很多主題,如網絡協議、因特網結構與內部操作、萬維網以及眾多安全問題。

在第5章(算法)中,我們將比較正式地學習算法研究。我們將研究如何發現算法,確定幾種基本的算法結構,開發幾項用于表示算法的基本技術,并介紹算法效率和正確性的主題。

在第6章(程序設計語言)中,我們討論的主題是算法表示和程序開發過程。在這一章中,我們會發現,人們在不斷改善程序設計技術的過程中,創造出了各種各樣的程序設計方法學或范型,每一種都有它自己的一套程序設計語言。我們除了研究這些范型和語言,還會考慮語法和語言翻譯的問題。

第7章(軟件工程)將介紹計算機科學的一個分支——軟件工程。軟件工程處理的是開發大型軟件系統時遇到的問題。底層主題是,大型軟件系統的設計是一項復雜的任務,會遇到傳統工程未涉及的許多問題。因此,軟件工程這一學科已經成為計算機科學中一個重要的研究領域,它借鑒了諸如工程、項目管理、人事管理、程序設計語言設計,甚至是建筑學等眾多領域的研究經驗。

在接下來的兩章中,我們將學習在計算機系統中組織數據的方法。在第8章(數據抽象)中,我們介紹傳統上用于在計算機的主存儲器中組織數據的技術,然后探索數據抽象的演變發展,從原語的概念一直到如今的面向對象技術。在第9章(數據庫系統)中,我們介紹傳統上用于在計算機海量存儲器中組織數據的方法,并研究如何實現極其龐大的復雜數據庫系統。

在第10章(計算機圖形學)中,我們將探索圖形學和動畫的主題,一個涉及創建并圖像化虛擬世界的領域。在計算機科學傳統領域(如機器體系結構、算法設計、數據結構和軟件工程)發展的基礎上,圖形學和動畫學科取得了重大進展,業已發展成為激動人心、充滿活力的學科。此外,這個領域體現了計算機科學的各個組成部分是如何與物理、藝術和攝影等學科相結合產生顯著成果的。

在第11章(人工智能)中,我們將了解到,為了開發更有用的機器,計算機科學已一馬當先轉向研究人類智能。研究人員希望通過對自己的思維推理和認知的了解,設計出模擬這些過程的算法,從而將類似的能力轉移到機器上。結果,計算機科學就有了人工智能這個領域,它非常依賴于心理學、生物學和語言學等領域的研究。

我們的學習到第12章(計算理論)結束,這一章將研究計算機科學的理論基礎,這個主題會讓我們了解算法(和機器)的局限性。這里我們不但明確了幾個算法上無法解決的問題(因而超出了機器的能力),而且認識到許多其他問題的解決方案需要大量的時間或空間,以至于從實踐的角度來看它們也是不可解的。因此,通過本章的學習,我們將能夠掌握算法系統的范圍和局限性。

我們的目標是,每一章主題的探討都足夠深入,使讀者真正理解。我們希望所闡述的計算機科學知識對大家的工作能有所幫助——使讀者了解自己身處的技術化社會,打好跟隨科技進步自我學習的基礎。

主站蜘蛛池模板: 隆昌县| 松潘县| 襄垣县| 进贤县| 嘉定区| 邻水| 前郭尔| 竹溪县| 通道| 宁津县| 龙陵县| 台安县| 从江县| 通渭县| 上犹县| 英山县| 麦盖提县| 远安县| 汤阴县| 越西县| 白河县| 柏乡县| 陇南市| 湟源县| 申扎县| 庄浪县| 绥化市| 肥西县| 宝应县| 樟树市| 涟源市| 民县| 阳高县| 峨山| 瑞丽市| 孝感市| 启东市| 七台河市| 黄平县| 赤城县| 义马市|