


版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、全國計算機二級考試重點公共基礎知識.txt37 真誠是美酒,年份越久越醇香濃烈;真誠是焰火,在高處綻放才愈顯美麗;真誠是鮮花,送之于人,手有余香。本文由小風 hcf 貢獻doc 文檔可能在 wap 端瀏覽體驗不佳。建議您優(yōu)先選擇txt,或下載源文件到本機查看。天驕現(xiàn)代考前沖刺資料公共基礎知識 第一章 數(shù)據(jù)結構與算法 1.1 算法 算法:是指解題方案的準確而完整的描述。 算法 :是指解題方案的準確而完整的描述。 算法不等于程序,也不等計算機方法,程序的 編制不可能優(yōu)于算法的設計。 算法的基本特征: 是一組嚴謹?shù)囟x運算順序 的規(guī)則,每一個規(guī)則都是有效的,是明確的, 此順序將在有限的次數(shù)下終止。特
2、征包括: (1)可行性; (2)確定性,算法中每一步驟都必須有明確 定義,不充許有模棱兩可的解釋,不允許有多 義性; (3)有窮性,算法必須能在有限的時間內做 完,即能在執(zhí)行有限個步驟后終止,包括合理 的執(zhí)行時間的含義; (4)擁有足夠的情報。 算法的基本要素: 一是對數(shù)據(jù)對象的運算和操 一是對數(shù)據(jù)對象的運算和操 二是算法的控制結構。作; 二是算法的控制結構。 指令系統(tǒng): 一個計算機系統(tǒng)能執(zhí)行的所有指令 的集合。 算術運算、 基本運算包括: 算術運算、 邏輯運算、 關系運 算術運算 邏輯運算、 數(shù)據(jù)傳輸。 算、 數(shù)據(jù)傳輸。 算法的控制結構:順序結構、選擇結構、算法的控制結構:順序結構、選擇結構
3、、循環(huán)結構。結構 。 算法基本設計方法:列舉法、歸納法、遞推、 遞歸、減斗遞推技術、回溯法。 算法復雜度: 算法時間復雜度和 算法復雜度 : 算法時間復雜度 和 算法空間復 雜度。 雜度 。 算法時間復雜度是指執(zhí)行算法所需要的 計算工作量。 計算工作量。 算法空間復雜度是指執(zhí)行這個算 法所需要的內存空間。 法所需要的內存空間。 1.2 數(shù)據(jù)結構的基本基本概念 數(shù)據(jù)結構研究的三個方面: 數(shù)據(jù)結構研究的三個方面: (1)數(shù)據(jù)集合中各數(shù)據(jù)元素之間所固有的邏 輯關系,即數(shù)據(jù)的邏輯結構; 數(shù)據(jù)的邏輯結構; 數(shù)據(jù)的邏輯結構 (2)在對數(shù)據(jù)進行處理時,各數(shù)據(jù)元素在計 算機中的存儲關系,即數(shù)據(jù)的存儲結構; 數(shù)
4、據(jù)的存儲結構; 數(shù)據(jù)的存儲結構 (3)對各種數(shù)據(jù)結構進行的運算。 對各種數(shù)據(jù)結構進行的運算。對各種數(shù)據(jù)結構進行的運算 數(shù)據(jù)結構是指相互有關聯(lián)的數(shù)據(jù)元素的集合。 數(shù)據(jù)結構是指相互有關聯(lián)的數(shù)據(jù)元素的集合。 數(shù)據(jù)的邏輯結構包含: (1)表示數(shù)據(jù)元素的信息; (2)表示各數(shù)據(jù)元素之間的前后件關系。 數(shù)據(jù)的存儲結構有順序、鏈接、索引等。 線性結構條件: 線性結構條件: (2) (1)有且只有一個根結點; )每一個結點 )有且只有一個根結點; (1最多有一個前件,也最多有一個后件。 最多有一個前件, 也最多有一個后件。 非線性結構: 非線性結構 : 不滿足線性結構條件的數(shù)據(jù)結 構。 13 線性表及其順序存
5、儲結構線性表是由一組數(shù)據(jù)元素構成 數(shù)據(jù)元素的位 素構成, 線性表 是由一組數(shù)據(jù)元素構成,置只取決于自己的序號, 置只取決于自己的序號, 元素之間的相對位置 是線性的。 是線性的。 在復雜線性表中, 由若干項數(shù)據(jù)元素組成的數(shù) 據(jù)元素稱為記錄 而由多個記錄構成的線性表 記錄, 記錄 又稱為文件 文件。 文件 非空線性表的結構特征: (1)且只有一個根結點 a1,它無前件; (2)有且只有一個終端結點 an,它無后件; (3)除根結點與終端結點外,其他所有結點 有且只有一個前件,也有且只有一個后件。結 點個數(shù) n 稱為線性表的長度 線性表的長度,當 n=0 時,稱 線性表的長度 為空表 空表。 空表
6、 線性表的順序存儲結構具有以下兩個基本特 點: (1)線性表中所有元素的所占的存儲空間是 )連續(xù)的; 連續(xù)的; (2)線性表中各數(shù)據(jù)元素在存儲空間中是按 )線性表中各數(shù)據(jù)元素在存儲空間中是按邏輯順序依次存放的。邏輯順序依次存放的。ai 的存儲地址為:adr(ai)=adr(a1)+(i-1)k, , adr(a1) 為 第一個元素的地址,k 代表每個元素占的字節(jié)數(shù)。 順序表的運算:插入、刪除。 14 棧和隊列 是限定在一端進行插入與刪除的線性表,棧 是限定在一端進行插入與刪除的線性表, 允 許插入與刪除的一端稱為棧頂, 許插入與刪除的一端稱為棧頂,不允許插入與 刪除的另一端稱為棧底。刪除的另一
7、端稱為棧底。棧按照 “先進后出 先進后出” ( 后進先出” 棧按照 先進后出 ( filo) 或 “后進先出 ) 后進先出 組織數(shù)據(jù), 棧具有記憶作用。 用 (lifo) ) 組織數(shù)據(jù), 棧具有記憶作用。 top表示棧頂位置, 用 bottom 表示棧底。 棧的基本運算:(1) 插入元素稱為入棧運算;(2)刪除元素稱為退棧運算;(3)讀棧頂元 素是將棧頂元素賦給一個指定的變量, 此時指 針無變化。 隊列是指允許在一端 隊尾)進入插入, 是指允許在一端( 隊列 是指允許在一端(隊尾)進入插入,而在 另一端(隊頭)進行刪除的線性表。 另一端(隊頭)進行刪除的線性表。rear 指 針指向隊尾, 指針
8、指向隊頭。 針指向隊尾,front 指針指向隊頭。 隊列是 “先進行出 先進行出” ( 后進后出” 隊列是 先進行出 ( fifo) 或 “后進后出 ) 后進后出 (lilo)的線性表。 )的線性表。 隊列運算包括(1)入隊運算:從隊尾插入一個元素; (2) 退隊運算: 從隊頭刪除一個元素。天驕現(xiàn)代考前沖刺資料循 環(huán) 隊 列 : s=0 表 示 隊 列 空 , s=1 且 front=rear 表示隊列滿 15 線性鏈表 數(shù)據(jù)結構中的每一個結點對應于一個存儲單 這種存儲單元稱為存儲結點, 簡稱結點 結點。 元,這種存儲單元稱為存儲結點,簡稱 結點 。 結點由兩部分組成: 1) ( 用于存儲數(shù)據(jù)
9、元素值, 稱為數(shù)據(jù)域 (2)用于存放指針,稱為指針 數(shù)據(jù)域; 數(shù)據(jù)域 指針 域 ,用于指向前一個或后一個結點。在鏈式存儲結構中,存儲數(shù)據(jù)結構的存儲空間 可以不連續(xù),各數(shù)據(jù)結點的存儲順序與數(shù)據(jù)元 素之間的邏輯關系可以不一致,而數(shù)據(jù)元素之 間的邏輯關系是由指針域來確定的。 鏈式存儲方式即可用于表示線性結構, 鏈式存儲方式即可用于表示線性結構, 也可用 于表示非線性結構。 于表示非線性結構。 線性鏈表, head 稱為頭指針, head=null (或 0)稱為空表 空表,如果是兩指針:左指針空表 左指針(llink)指向前件結點,右指針 右指針(rlink)指 右指針 向后件結點。 線性鏈表的基本
10、運算:查找、插入、刪除。 16 樹與二叉樹 樹是一種簡單的非線性結構, 樹是一種簡單的非線性結構 所有元素之間具 有明顯的層次特性。在樹結構中, 每一個結點只有一個前件,稱為 父結點,沒有前件的結點只有一個,稱為樹的樹的 根結點,簡稱樹的根。每一個結點可以有多個 根結點 子結點。 后件,稱為該結點的子結點。 沒有后件的結點 子結點 稱為葉子結點。 稱為葉子結點。 在樹結構中, 在樹結構中, 一個結點所擁有的后件的個數(shù)稱 為該結點的度, 為該結點的度, 所有結點中最大的度稱為樹的 樹的最大層次稱為樹的深度。 度。樹的最大層次稱為樹的深度。 的特點: (1)非空二叉 二 叉樹 的特點: )非空二叉
11、 樹只有一個根 ( 結點; (2)每一個結點最多有兩棵子樹, 結點 ; ) 每一個結點最多有兩棵子樹 ,且 ( 分別稱為該結點的左子樹與右子樹。 分別稱為該結點的左子樹與右子樹。 樹的基本性質 基本性質: 二叉樹的基本性質: (1)在二叉樹的第 k 層上,最多有 2k-1(k1)個結點; 個結點; 個結點 的二叉 (2)深度為 m 的二叉樹最多有 2m-1 個結 ) 點;(3)度為 0 的結點(即葉子結點)總是比度 為 2 的結點多一個;(4)具有 n 個結點的二叉樹,其深度至少為 log2n+1,其中l(wèi)og2n表示取 log2n 的整數(shù)部分; (5)具有 n 個結點的完全二叉樹的深度為 lo
12、g2n+1; (6)設完全二叉樹共有 n 個結點。如果從根2結點開始,按層序(每一層從左到右)用自然數(shù) 1, .n 給結點進行編號2,(k=1,2.n),有以下結論:若 k=1, 則該結點為根結點, 它沒有父結 點 ;若 k1 ,則 該 結 點 的 父 結 點 編 號 為 int(k/2); 若 2kn, 則編號為 k 的結點的左子結點編 號為 2k;否則該結點無左、右子結點; 若 2k+1n,則編號為 k 的結點的右子結 點編號為 2k+1; 否則該結點無右子結點。滿二叉 是指除最后一層外,滿二叉樹 是指除最后一層外, 每一層上的所有 結點有兩個子結點, 結點有兩個子結點,則 k 層上有2k
13、-1 個結 的滿二叉 個結點。點深度為 m 的滿二叉樹有 2m-1 個結點。完全二叉樹 是指除最后一層外, 完全二叉 是指除最后一層外, 每一層上的結 點數(shù)均達到最大值, 點數(shù)均達到最大值, 在最后一層上只缺少右邊 的若干結點。 的若干結點。 樹存儲結構采用鏈式存儲結構 鏈式存儲結構,二叉樹存儲結構采用 鏈式存儲結構 對于滿二 叉樹與完全二叉樹可以按層序進行順序存儲。 樹的遍歷: 二叉樹的遍歷: ,首先訪問根結點 (1) 前序遍歷 (dlr) 首先訪問根結點, ) 前序遍歷( ) 首先訪問根結點, , 然后遍歷左子樹,最后遍歷右子樹; 然后遍歷左子樹,最后遍歷右子樹; ,首先遍歷左子樹 ) 首
14、先遍歷左子樹, , (2) 中序遍歷 (ldr) 首先遍歷左子樹, ) 中序遍歷( 然后訪問根結點,最后遍歷右子樹; 然后訪問根結點,最后遍歷右子樹; (3)后序遍歷(lrd)首先遍歷左子樹, 然 )后序遍歷( )首先遍歷左子樹, 后訪問遍歷右子樹, 最后訪問根結點。后訪問遍歷右子樹,最后訪問根結點。 17 查找技術 順序查找的使用情況: 線性表為無序表; 表采用鏈式存儲結構。二分法查找只適用于順序存儲的有序表 順序存儲的有序表,二分法查找只適用于 順序存儲的有序表 對于 長度為 n 的有序線性表,最壞情況只需比較log2n 次。 1 8 排序技術 排序是指將一個無序序列整理成按值非遞減 順序
15、排列的有序序列。 交換類排序法: (1)冒泡排序法,需要比較的 次數(shù)為 n(n-1)/2; (2)快速排序法。 插入類排序法: (1)簡單插入排序法, 最壞情 況需要 n(n-1)/2 次比較; (2) 希爾排序法, 1.5 最壞情況需要 o(n )次比較。 選擇類排序法: (1)簡單選擇排序法, 最壞情 況需要 n(n-1)/2 次比較; (2)堆排序法, 最壞情況需要 o(nlog2n)次比較。 第二章程序設計基礎 21 程序設計設計方法和風格 如何形成良好的程序設計風格 1、源程序文檔化; 2、數(shù)據(jù)說明的方法;天驕現(xiàn)代考前沖刺資料3、 語句的結構; 4、 輸入和輸出。 序言性注釋和 功能
16、性注釋, 注釋分 序言性注釋 和功能性注釋 , 語句結構 清晰第一、效率第二。 清晰第一、效率第二 22 結構化程序設計 結構化程序設計方法的四條原則是:結構化程序設計方法的四條原則是: 1. 自頂 向下;逐步求精; 模塊化 模塊化; 限制使用 向下 ; 2. 逐步求精 ; 3.模塊化 ; 4.限制使用 goto語句 。 語句。 結構化程序的基本結構和特點: 結構化程序的基本結構 (1)順序結構 順序結構:一種簡單的程序設計,最基 順序結構 本、最常用的結構; (2)選擇結構 選擇結構: 又稱分支結構, 包括簡單選 選擇結構 擇和多分支選擇結構, 可根據(jù)條件, 判斷應該 選擇哪一條分支來執(zhí)行相
17、應的語句序列; (3)循環(huán)結構 循環(huán)結構:可根據(jù)給定條件,判斷是否 循環(huán)結構 需要重復執(zhí)行某一相同程序段。 23 面向對象的程序設計 面向對象的程序設計:以 60 年代末挪威奧斯 陸大學和挪威計算機中心研制的 simula 語 言為標志。面向對象方法的優(yōu)點: (1)與人類習慣的思維方法一致; (2)穩(wěn)定 性好; (3)可重用性好; (4)易于開發(fā)大型 軟件產品; (5)可維護性好。 對象是面向對象方法中最基本的概念, 可以用 對象 來表示客觀世界中的任何實體, 對象是實體的 抽象。 面向對象的程序設計方法中的對象是系統(tǒng)中 用來描述客觀事物的一個實體,是構成系統(tǒng)的 一個基本單位, 由一組表示其靜
18、態(tài)特征的屬性 和它可執(zhí)行的一組操作組成。屬性即對象所包含的信息, 操作描述了對象執(zhí) 屬性 行的功能,操作也稱為 方法 或 服務 。 方法或 操作也稱為方法 服務。 對象的基本特點: 對象的基本特點:(1)標識惟一性; ) 標識惟一性;(2)分類性; )分類性; (3)多態(tài)性; )多態(tài)性; (4)封裝性; )封裝性; (5)模塊獨立性好。 )模塊獨立性好。 是指具有共同屬性、 類 是指具有共同屬性、共同方法的對象的集 合。所以類是對象的抽象,對象是對應類的一 所以類是對象的抽象, 個實例。 個實例。 消息 是一個實例與另一個實例之間傳遞的信 息。 消息的組成包括(1)接收消息的對象的名稱; (2
19、)消息標識符,也稱消息名; (3)零個或 多個參數(shù)。3繼承是指能夠直接獲得已有的性質和特征,繼承 是指能夠直接獲得已有的性質和特征,是指能夠直接獲得已有的性質和特征 而 不必重復定義他們。 不必重復定義他們。 繼承分單繼承和多重繼承。 繼承分單繼承和多重繼承。 單繼承指一個類只 允許有一個父類, 允許有一個父類, 多重繼承指一個類允許有多 個父類。 個父類。 多態(tài)性是指同 是指同樣的消息被不同的對象接受時 多態(tài)性 是指同 樣的消息被不同的對象接受時 可導致完全不同的行動的現(xiàn)象 第三章軟件工程基礎 31 軟件工程基本概念 計算機軟件是包括程序 數(shù)據(jù)及相關文檔的 程序、 計算機軟件是包括 程序 、
20、 數(shù)據(jù) 及 相關文檔 的 完整集合。 完整集合。 軟件的特點包括: (1)軟件是一種邏輯實體; (2)軟件的生產與硬件不同,它沒有明顯的 制作過程; (3)軟件在運行、使用期間不存在磨損、老 化問題; (4)軟件的開發(fā)、運行對計算機系統(tǒng)具有依 賴性,受計算機系統(tǒng)的限制,這導致了軟件移 植的問題;(5)軟件復雜性高,成本昂貴; (6)軟件開發(fā)涉及諸多的社會因素。 軟件按功能分為應用軟件、系統(tǒng)軟件、 軟件按功能分為應用軟件、系統(tǒng)軟件、支撐軟 或工具軟件) 件(或工具軟件) 。 軟件危機主要表現(xiàn)在成本、質量、生產率等問 題。 軟件工程是應用于計算機軟件的定義 開發(fā)和 是應用于計算機軟件的定義、 軟件
21、工程 是應用于計算機軟件的定義、維護的一整套方法、工具、文檔、 維護的一整套方法、工具、文檔、實踐標準和工序。 工序。 軟件工程包括 3 個要素:方法、工具和過程。 個要素:方法、工具和 過程。 軟件工程過程是把軟件轉化為輸出的一組彼 此相關的資源和活動,包含 4 種基本活動: (1)p軟件規(guī)格說明; (2)d軟件開發(fā); (3)c軟件確認; (4)a軟件演進。 軟件周期:軟件產品從提出、實現(xiàn)、 軟件周期 :軟件產品從提出、實現(xiàn)、使用維護 到停止使用退役的過程。 到停止使用退役的過程。 軟件生命周期三個階段:軟件定義 軟件開發(fā) 、 軟件定義、 軟件開發(fā)、 軟件生命周期三個階段 軟件定義 、 運行
22、維護,主要活動階段是: 運行維護 ,主要活動階段是:(1)可行性研究與計劃制定;(2)需求分析;(3)軟件設計; (4)軟件實現(xiàn); (5)軟件測 試; (6)運行和維護。 軟件工程的目標和與原則: 目標:在給定成本、進度的前提下,開發(fā)出具 有有效性、可靠性、可理解性、可維護性、可天驕現(xiàn)代考前沖刺資料重用性、可適應性、可移植性、可追蹤性和可 互操作性且滿足用戶需求的產品。 基本目標:付出較低的開發(fā)成本;達到要求的 軟件功能;取得較好的軟件性能;開發(fā)軟件易 于移植;需要較低的費用;能按時完成開發(fā),及時交付使用。 基本原則: 抽象、 信息隱蔽、模塊化、 局部化、 基本原則: 抽象、 信息隱蔽、 模塊
23、化、局部化、 確定性、一致性、完備性和可驗證性。 確定性、一致性、完備性和可驗證性。 軟件工程的理論和技術性研究的內容主要包 軟件工程的理論和技術性研 究的內容主要包 軟件開發(fā)技術和軟件工程管理。括: 軟件開發(fā)技術 和 軟件工程管理 。 軟件開發(fā)技術包括: 軟件開發(fā)方法學、 軟件開發(fā)技術包括 : 軟件開發(fā)方法學 、 開發(fā) 過程、 開發(fā)工具和 軟件工程環(huán)境。 過程 、 開發(fā)工具 和 軟件工程環(huán)境 。 軟件工程管理包括: 軟件管理學、 軟件工程管理包括 : 軟件管理學 、 軟件工程 經濟學、軟件心理學等內容。 經濟學 、 軟件心理學等內容 。 軟件管理學包括人員組織、進度安排、 軟件管理學包括人員
24、組織、進度安排、質量保 配置管理、項目計劃等。 證、 配置管理、 項目計劃等。 軟件工程原則包括抽象、 信息隱蔽、 模塊化、 軟件工程原則包括抽象、信息隱蔽、模塊化、 局部化、 確定性、 一致性、 完備性和可驗證性。 局部化、 確定性、 一致性、 完備性和可驗證性。 32 結構化分析方法 結構化方法的核心和基礎是結構化程序設計 結構化方法的核心和基礎是 結構化程序設計 理論。 理論 。 需求分析方法有( ) 結構化需求分析方法; 需求分析方法有(1)結構化需求分析方法 ; (2)面向對象的分析的方法 。 ) 面向對象的分析的方法。 從需求分析建立的模型的特性來分:從需求分析建立的模型的特性來分
25、:靜態(tài)分析 動態(tài)分析。和 動態(tài)分析 。結構化分析方法的實質:著眼于數(shù)據(jù)流, 結構化分析方法的實質:著眼于數(shù)據(jù)流,自頂 向下,逐層分解,建立系統(tǒng)的處理流程, 向下,逐層分解,建立系統(tǒng)的處理流程,以數(shù) 據(jù)流圖和數(shù)據(jù)字典為主要工具,建立系統(tǒng)的邏 據(jù)流圖和數(shù)據(jù)字典為主要工具 建立系統(tǒng)的邏 輯模型。 輯模型。 結構化分析的常用工具 ( 1) 數(shù)據(jù)流圖 ; ( 2) 數(shù)據(jù)字典 ; ( 3) )數(shù)據(jù)流圖; ) 數(shù)據(jù)字典; ) 判定樹; 判定樹 ; (4)判定表 。 ) 判定表。 數(shù)據(jù)流圖: 數(shù)據(jù)流圖:描述數(shù)據(jù)處理過程的工具,是需求 理解的邏輯模型的圖形表示, 它直接支持系統(tǒng) 功能建模。 數(shù)據(jù)字典: 數(shù)據(jù)字典
26、 對所有與系統(tǒng)相關的數(shù)據(jù)元素的一 個有組織的列表,以及精確的、嚴格的定義, 使得用戶和系統(tǒng)分析員對于輸入、輸出、存儲 成分和中間計算結果有共同的理解。 判定樹: 從問題定義的文字描述中分清哪些是 判定的條件, 哪些是判定的結論,根據(jù)描述材 料中的連接詞找出判定條件之間的從屬關系、 并列關系、選擇關系,根據(jù)它們構造判定樹。 判定表:與判定樹相似,當數(shù)據(jù)流圖中的加工 要依賴于多個邏輯條件的取值, 即完成該加工4的一組動作是由于某一組條件取值的組合而 引發(fā)的,使用判定表描述比較適宜。 數(shù)據(jù)字典是結構化分析的核心 是結構化分析的核心。 數(shù)據(jù)字典 是結構化分析的核心。 軟件需求規(guī)格說明書的特點: (1)
27、正確性; (2)無岐義性; (3)完整性; (4)可驗證性;(5)一致性; (6)可理解性; (7)可追蹤性。 33 結構化設計方法 軟件設計的基本目標是用比較抽象概括的方 式確定目標系統(tǒng)如何完成預定的任務,軟件設 計是確定系統(tǒng)的物理模型。 計是確定系統(tǒng)的物理模型 。 軟件設計是開發(fā)階段最重要的步驟 是將需求 是開發(fā)階段最重要的步驟,軟件設計 是開發(fā)階段最重要的步驟,準確地轉化為完整的軟件產品或系統(tǒng)的唯一 途徑。 途徑。 從技術觀點來看, 軟件設計包括軟件 結構設 軟件設計包括軟件 數(shù)據(jù)設計、接口設計、過程設計。 計 、 數(shù)據(jù)設計 、 接口設計 、 過程設計 。 結構設計: 定義軟件系統(tǒng)各主要
28、部件之間的關 系。 數(shù)據(jù)設計: 將分析時創(chuàng)建的模型轉化為數(shù)據(jù)結 構的定義。 接口設計:描述軟件內部、 軟件和協(xié)作系統(tǒng)之 間以及軟件與人之間如何通信。 過程設計: 把系統(tǒng)結構部件轉換成軟件的過程 描述。 從工程管理角度來看:概要設計和詳細設計。 從工程管理角度來看: 概要設計 和 詳細設計 。 軟件設計的一般過程:軟件設計是一個迭代的 過程;先進行高層次的結構設計;后進行低層 次的過程設計;穿插進行數(shù)據(jù)設計和接口設 計。衡量軟件模塊獨立性使用耦合性 內聚性兩 耦合性和 衡量軟件模塊獨立性使用 耦合性 和 內聚性 兩 個定性的度量標準。個定性的度量標準。在程序結構中各模塊的內聚性越強, 在程序結構
29、中各模塊的內聚性越強, 則耦合性 越弱。優(yōu)秀軟件應高內聚, 低耦合。 越弱。 優(yōu)秀軟件應高內聚, 低耦合。 軟件概要設計的基本任務是:(1)設計軟件系統(tǒng)結構; (2)數(shù)據(jù)結構及 數(shù)據(jù)庫設計; (3)編寫概要設計文檔; (4) 概要設計文檔評審。 模塊用一個矩形表示, 箭頭表示模塊間的 調用關系。 在結構圖中還可以用帶注釋的箭頭表示 模塊調用過程中來回傳遞的信息。還可用帶實 心圓的箭頭表示傳遞的是控制信息, 空心圓箭 心表示傳遞的是數(shù)據(jù)。結構圖的基本形式: 基本形式、 順序形式、結構圖的基本形式:基本形式、順序形式、重復形式、選擇形式。 復形式、選擇形式。 結構圖有四種模塊類型: 傳入模塊、 傳
30、出模塊、 結構圖有四種模塊類型: 傳入模塊、 傳出模塊、天驕現(xiàn)代考前沖刺資料變換模塊和協(xié)調模塊。 變換模塊和協(xié)調模塊。 典型的數(shù)據(jù)流類型有兩種: 變換型和 事務型。 典型的數(shù)據(jù)流類型有兩種: 變換型 和 事務型 。 變換型系統(tǒng)結構圖由輸入、中心變換、 變換型系統(tǒng)結構圖由輸入、中心變換、輸出三 部分組成。 部分組成。 事務型數(shù)據(jù)流的特點是: 接受一項事務,根據(jù)事務處理的特點和性質,選擇分派一個適 當?shù)奶幚韱卧?,然后給出結果。詳細設計:是為軟件結構圖中的每一個模 塊確定實現(xiàn)算法和局部數(shù)據(jù)結構,用某種選定 的表達工具表示算法和數(shù)據(jù)結構的細節(jié)。常見的過程設計工具有: 圖形工具 ( 常見的過程設計工具有
31、:圖形工具(程序流程 、表格工具 、語言工具 圖) 表格工具(判定表) 語言工具(pdl) 、表格工具(判定表) 語言工具( 、 ) 。 34 軟件測試 軟件測試定義: 軟件測試定義 使用人工或自動手段來運行或 測定某個系統(tǒng)的過程, 其目的在于檢驗它是否 滿足規(guī)定的需求或是弄清預期結果與實際結 果之間的差別。軟件測試的目的: 軟件測試的目的 : 發(fā)現(xiàn)錯誤而執(zhí)行程序的過 程。 軟件測試方法:靜態(tài)測試和動態(tài)測試。軟件測試方法:靜態(tài)測試 和 動態(tài)測試 。靜態(tài)測試包括代碼檢查、 靜態(tài)結構分析、靜態(tài)測試包括代碼檢查、靜態(tài)結構分析、代碼 質量度量。 質量度量。不實際運行軟件,通過人工進行。 動態(tài)測試: 動
32、態(tài)測試:是基本計算機的測試,主要包括白 盒測試方法和黑盒測試方法。 白盒測試:在程序內部進行,主要用于完成軟 白盒測試 件內部 cao 作的驗證。主要方法有邏輯覆蓋、 基本基路徑測試。 黑盒測試:主要診斷功能不對或遺漏、界面錯 黑盒測試 誤、數(shù)據(jù)結構或外部數(shù)據(jù)庫訪問錯誤、性能錯 誤、初始化和終止條件錯,用于軟件確認。主 要方法有等價類劃分法、邊界值分析法、錯誤 推測法、因果圖等。 個步驟進行:軟件測試過程一般按 4 個步驟進行:單元測 集成測試、驗收測試(確認測試) 試、集成測試、驗收測試(確認測試)和系統(tǒng) 測試。 測試。 35 程序的調試 程序調試的任務是診斷和改正程序中的錯誤, 程序調試的
33、任務是診斷和改正程序中的錯誤, 主要在開發(fā)階段進行。 主要在開發(fā)階段進行。 程序調試的基本步驟: (1)錯誤定位; (2)修改設計和代碼,以排除錯誤; (3)進行回歸測試,防止引進新的錯誤。 軟件調試可分表靜態(tài)調試和動態(tài)調試。 軟件調試可分表靜態(tài)調試和動態(tài)調試。靜態(tài)調 試主要是指通過人的思維來分析源程序代碼 和排錯, 是主要的設計手段,和排錯, 是主要的設計手段, 而動態(tài)調試是輔 助靜態(tài)調試。 助靜態(tài)調試。主要調試方法有:5(1)強行排錯法; (2)回溯法; (3)原因排除法。 第四章 數(shù)據(jù)庫設計基礎 41數(shù)據(jù)庫系統(tǒng)的基本概念 數(shù)據(jù): 數(shù)據(jù):實際上就是描述事物的符號記錄。 數(shù)據(jù)的特點:有一定的
34、結構,有型與值之分, 數(shù)據(jù)的特點:有一定的結構,有型與值之分, 如整型、實型、字符型等。 如整型、 實型、 字符型等。 而數(shù)據(jù)的值給出了 符合定型的值, 如整型值 15。 數(shù)據(jù)庫: 是數(shù)據(jù)的集合, 數(shù)據(jù)庫 :是數(shù)據(jù)的集合, 具有統(tǒng)一的結構形式 并存放于統(tǒng)一的存儲介質內, 并存放于統(tǒng)一的存儲介質內, 是多種應用數(shù)據(jù) 的集成,并可被各個應用程序共享 各個應用程序共享。 的集成,并可被各個應用程序共享。 數(shù)據(jù)庫存放數(shù)據(jù)是按數(shù)據(jù)所提供的數(shù)據(jù)模式 存放的,具有集成與共享的特點。 數(shù)據(jù)庫管理系統(tǒng):一種系統(tǒng)軟件,負責數(shù)據(jù)庫 數(shù)據(jù)庫管理系統(tǒng) 中的數(shù)據(jù)組織、數(shù)據(jù)操縱、數(shù)據(jù)維護、控制及 保護和數(shù)據(jù)服務等,是數(shù)據(jù)庫
35、的核心 是數(shù)據(jù)庫的核心。 是數(shù)據(jù)庫的核心 數(shù)據(jù)庫管理系統(tǒng)功能: (1)數(shù)據(jù)模式定義:即為數(shù)據(jù)庫構建其數(shù)據(jù) 框架; (2)數(shù)據(jù)存取的物理構建:為數(shù)據(jù)模式 的物理存取與構建提供有效的存取方法與手 段;(3)數(shù)據(jù)操縱:為用戶使用數(shù)據(jù)庫的數(shù)據(jù)提 供方便,如查詢、插入、修改、刪除等以及簡 單的算術運算及統(tǒng)計; (4)數(shù)據(jù)的完整性、安生性定義與檢查; (5)數(shù)據(jù)庫的并發(fā)控制與故障恢復; (6)數(shù)據(jù)的服務:如拷貝、轉存、重組、 性 能監(jiān)測、 分析等。為完成以上六個功能,數(shù)據(jù)庫管理系統(tǒng)提供以 下的數(shù)據(jù)語言:下的數(shù)據(jù)語言:(1)數(shù)據(jù)定義語言 數(shù)據(jù)定義語言:負責數(shù)據(jù)的模式定義與 數(shù)據(jù)定義語言 數(shù)據(jù)的物理存取構建;
36、 (2)數(shù)據(jù)操縱語言:負責數(shù)據(jù)的操縱,如查 數(shù)據(jù)操縱語言 數(shù)據(jù) 詢與增、刪、改等; (3)數(shù)據(jù)控制語言 數(shù)據(jù)控制語言:負責數(shù)據(jù)完整性、安全 數(shù)據(jù)控制語言 性的定義與檢查以及并發(fā)控制、 故障恢復等。 數(shù)據(jù)語言按其使用方式具有兩種結構形式:交 互式命令(又稱自含型或自主型語言 又稱自含型或自主型語言)宿主型 互式命令 又稱自含型或自主型語言 宿主型 語言(一般可嵌入某些宿主語言中) 語言(一般可嵌入某些宿主語言中) 。 數(shù)據(jù)庫管理員:對數(shù)據(jù)庫進行規(guī)劃、設計、維 數(shù)據(jù)庫管理員 護、監(jiān)視等的專業(yè)管理人員。 數(shù)據(jù)庫系統(tǒng):由數(shù)據(jù)庫(數(shù)據(jù)) 、數(shù)據(jù)庫管理 數(shù)據(jù)庫系統(tǒng) :由數(shù)據(jù)庫(數(shù)據(jù)) 數(shù)據(jù)庫管理 、 系統(tǒng)
37、(軟件) 數(shù)據(jù)庫管理員(人員) 、數(shù)據(jù)庫管理員 、硬件平 系統(tǒng)(軟件) 數(shù)據(jù)庫管理員(人員) 硬件平 、 、 硬件) 軟件平臺(軟件) 、軟件平臺 臺(硬件) 軟件平臺(軟件)五個部分構成 、 的運行實體。 的運行實體。 數(shù)據(jù)庫應用系統(tǒng):由數(shù)據(jù)庫系統(tǒng)、應用軟件及 數(shù)據(jù)庫應用系統(tǒng)天驕現(xiàn)代考前沖刺資料應用界面三者組成。 文件系統(tǒng)階段: 提供了簡單的數(shù)據(jù)共享與數(shù)據(jù) 管理能力, 但是它無法提供完整的、統(tǒng)一的、 管理和數(shù)據(jù)共享的能力。 層次數(shù)據(jù)庫與網狀數(shù)據(jù)庫系統(tǒng)階段 :為統(tǒng)一 與共享數(shù)據(jù)提供了有力支撐。關系數(shù)據(jù)庫系統(tǒng)階段 數(shù)據(jù)庫系統(tǒng)的基本特點: 數(shù)據(jù)的集成性 、數(shù) 據(jù)的高共享性與低冗余性 、數(shù)據(jù)獨立性(
38、物 理獨立性與邏輯獨立性) 、數(shù)據(jù)統(tǒng)一管理與控 制。 數(shù)據(jù)庫系統(tǒng)的三級模式: 數(shù)據(jù)庫系統(tǒng)的三級模式: 概念模式:數(shù)據(jù)庫系統(tǒng)中全局數(shù)據(jù)邏輯 (1)概念模式 概念模式 結構的描述,全體用戶公共數(shù)據(jù)視圖;(2)外模式 外模式:也稱子模式與用戶模式。 是用 外模式 戶的數(shù)據(jù)視圖, 也就是用戶所見到的數(shù)據(jù)模 式; (3)內模式 內模式:又稱物理模式,它給出了數(shù)據(jù) 內模式 庫物理存儲結構與物理存取方法。 數(shù)據(jù)庫系統(tǒng)的兩級映射: 數(shù)據(jù)庫系統(tǒng)的兩級映射: (1)概念模式到內模式的映射; )概念模式到內模式的映射; (2)外模式到概念模式的映射。 )外模式到概念模式的映射。4.2 數(shù)據(jù)模型 數(shù)據(jù)模型的概念: 是
39、數(shù)據(jù)特征的抽象, 從抽象 數(shù)據(jù)模型 層次上描述了系統(tǒng)的靜態(tài)特征、動態(tài)行為和約 束條件, 為數(shù)據(jù)庫系統(tǒng)的信息表與操作提供一個抽象的框架。描述了數(shù)據(jù)結構、數(shù)據(jù)操作及 數(shù)據(jù)約束。 e-r 模型的基本概念 (1)實體實體:現(xiàn)實世界中的事物; 實體 (2)屬性 屬性:事物的特性; 屬性 (3)聯(lián)系 聯(lián)系:現(xiàn)實世界中事物間的關系。 實體 聯(lián)系 集的關系有一對一、 一對多、 多對多的聯(lián)系。 e-r 模型三個基本概念之間的聯(lián)接關系:實 模型三個基本概念之間的聯(lián)接關系: 體是概念世界中的基本單位,屬性有屬性域, 體是概念世界中的基本單位,屬性有屬性域, 每個實體可取屬性域內的值。 每個實體可取屬性域內的值。 一
40、個實體的所有 屬性值叫元組。 屬性值叫元組。 e-r 模型的圖示法: ) 模型的圖示法: 實體集表示法; 2) (1) ( 實體集表示法; ) ( 屬性表法; 屬性表法; (3)聯(lián)系表示法。 )聯(lián)系表示法。 層次模型的基本結構是樹形結構, 具有以下特 點: (1)每棵樹有且僅有一個無雙親結點,稱為 根;(2) 樹中除根外所有結點有且僅有一個雙親 有且僅有一個雙親。 有且僅有一個雙親 從圖論上看, 網狀模型是一個不加任何條件限 制的無向圖。 制的無向圖。6關系模型采用二維表來表示,簡稱表 ,由表框 表 架及表的元組組成。 一個二維表就是一個關 系。 在二維表中凡能唯一標識元組的最小屬性稱 鍵或碼。 為鍵或碼 從所有侯選健中選取一個作為用戶 鍵或碼 使用的鍵稱主鍵 主鍵。 表 a 中的某屬性是某表 b 主鍵 的鍵, 則稱該屬性集為 a 的外鍵或外碼 外鍵或外碼。 外鍵或外碼 關系中的數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 茶葉代銷合作協(xié)議書
- 鋼管扣件保管協(xié)議書
- 運維改造合同協(xié)議書
- 閱文合同霸王協(xié)議書
- 駐場開發(fā)保密協(xié)議書
- 酒店入股經營協(xié)議書
- 修腳店合伙開店協(xié)議書
- 養(yǎng)雞合伙人合同協(xié)議書
- 菜園開荒租賃協(xié)議書
- 車輛交付違約協(xié)議書
- 六、回顧整理-總復習2.圖形的認識與測量(二)-平面圖形的周長和面積(課件)青島版六年級下冊數(shù)學
- 中醫(yī)養(yǎng)生(靈源萬應茶)
- 追索子女撫養(yǎng)費起訴狀
- 六年級數(shù)學質量分析PPT
- 土地平整、池塘推土、雜草灌木叢及樹木清除施工方案
- 眼鏡鏡架的整形專業(yè)培訓2課件
- 下線儀式串詞策劃
- 通用長期供銷合同范本
- 《社區(qū)治理研究國內外文獻綜述(1900字)》
- 2023浙江省學生藝術特長測試A級理論復習資料
- 建筑業(yè)企業(yè)資質職稱人員相近專業(yè)認定目錄
評論
0/150
提交評論