《偉大的計算原理》一領域和基本原理
本節書摘來華章計算機《偉大的計算原理》一書中的第2章 ,[美]彼得 J. 丹寧(Peter J. Denning)
克雷格 H. 馬特爾(Craig H. Martell)著 羅英偉 高良才 張 偉 熊瑞勤 譯 更多章節內容可以訪問雲棲社區“華章計算機”公眾號查看。
領域和基本原理
有兩種基本策略來表示特定學科的知識體係。一種策略羅列出該學科包含的所有領域,另一種策略則羅列出所有的基本原理。對同一知識空間的不同表示會對實踐活動產生不同的指導意義。在本章中,我們使用“領域”(domain)來表示技術領域,即關注特定技術的領域。
教育者通常使用“知識體係”(BOK)一詞來表示對特定學科知識的係統化描述,並且基於知識體係來設計相應的課程體係。ACM在1968年給出了關於計算的第一個知識體係,並在1989年、2001年和2013年進行了更新。1989年版本包含了計算的9個核心領域(Denning et al. 1989),2001版本包含了14個(ACM Education Board 2001),2013版本則進一步擴充到18個(ACM Education Board 2013)。之所以將這些子領域稱為核心領域,是因為這些領域都或多或少為其他領域提供了基礎技術支持。
基本原理框架(如本書所給出的計算基本原理框架)與麵向應用領域的框架是正交的。一條基本原理可能會出現在多個領域中,而一個領域可能會依賴於多條基本原理。這些被領域所依賴的基本原理,其演化速度遠低於技術的演化速度。
雖然這兩種風格的框架具有很大的差異性,但它們也存在緊密的關聯。為了更形象地感受到這種緊密關聯,我們可以想象這樣一個二維矩陣:每一行代表一個領域,每一列代表一類基本原理,所有的單元格則代表了特定方麵的知識空間(見圖2.2)。
圖2.2 關於計算的知識空間可以被表示為一個矩陣:其中,列代表不同類型的基本原理,行代表不同的領域。圖中灰色背景的單元格中給出了信息安全領域使用到的兩個協作類型的基本原理:密鑰分配協議(用於安全地分配密鑰);零知識證明(用於在兩個參與者之間安全地交換私密信息)
基於這種矩陣,我們可以說:麵向技術的知識體係是對該矩陣中行的羅列,而麵向基本原理的知識體係則是對矩陣列的羅列。這兩種知識體係從不同的角度對相同的知識進行了闡述。
設想一個人試圖羅列出一個技術涉及的所有基本原理。這個人可以從基本原理的6種類別出發分析出該技術領域涉及的所有基本原理,即對應於矩陣中的一行(見圖2.3)。在本章的餘下部分,我們將用這種方式對4個領域涉及的基本原理進行分析。
圖2.3 安全領域涉及的計算基本原理在矩陣中對應於安全領域所在的那一行。如同大多數的計算領域一樣,安全領域涉及的計算基本原理也可以劃分為六種類型
這種基本原理框架也指出了另外一種分析方法:一個人可以羅列出涉及特定基本原理的所有技術(見圖2.4)。
圖2.4 協作技術表現為矩陣中協作所在的那一列。在幾乎所有的計算領域中(包括列出的6種計算領域)都會涉及協作相關的基本原理
最後更新:2017-06-26 12:02:06