freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第四章軟件設(shè)計(jì)-資料下載頁(yè)

2025-10-03 04:37本頁(yè)面

【導(dǎo)讀】設(shè)計(jì)指的是應(yīng)用各種技術(shù)和原理對(duì)一個(gè)。軟件設(shè)計(jì)是一個(gè)把軟件需求轉(zhuǎn)化為。件的具體設(shè)計(jì)方案。·設(shè)計(jì)必須實(shí)現(xiàn)分析模型中所有的功能和性能的。·設(shè)計(jì)必須具有良好的可讀性和可理解性,以便。于代碼的生成,以及軟件測(cè)試和維護(hù);·設(shè)計(jì)應(yīng)該是完整的,包括數(shù)據(jù)、體系結(jié)構(gòu)、功。為了更好地評(píng)估一個(gè)系統(tǒng)的設(shè)計(jì)質(zhì)量,應(yīng)該建。·展示一種層次性結(jié)構(gòu),該結(jié)構(gòu)已經(jīng)使用。·模塊化,即軟件被邏輯地劃分為特定功能和子。·從可識(shí)別的數(shù)據(jù)模式導(dǎo)出數(shù)據(jù)結(jié)構(gòu),并且適合。·降低模塊和外部環(huán)境連接復(fù)雜性的接口。·設(shè)計(jì)過(guò)程不應(yīng)該受到“隧道視野”的限制。·設(shè)計(jì)應(yīng)該適應(yīng)變更。設(shè)計(jì)人員應(yīng)該運(yùn)用設(shè)計(jì)概念和各。·應(yīng)該評(píng)審設(shè)計(jì)以減少概念性的錯(cuò)誤。把軟件按照規(guī)定的原則,劃分為一個(gè)個(gè)。以獲得問(wèn)題的解。的修改,那么,變更引起的副作用就會(huì)被最小化。本手段是“分解”。么大,總可以有計(jì)劃地把它分解足夠小的子問(wèn)題。階段,分解是處理復(fù)雜問(wèn)題常用的方法。體系結(jié)構(gòu)設(shè)計(jì)定義了軟件的主要結(jié)構(gòu)元素。

  

【正文】 他補(bǔ)充 。 ? 設(shè)計(jì)完成后應(yīng)該編寫(xiě)設(shè)計(jì)文檔 , 還應(yīng)該為每一個(gè)模塊設(shè)計(jì)一組測(cè)試用例 , 以便對(duì)模塊進(jìn)行測(cè)試 。 過(guò)程設(shè)計(jì)常用的描述工具 ? 過(guò)程設(shè)計(jì)描述工具或者說(shuō)描述方式 , 應(yīng)該具有描述過(guò)程細(xì)節(jié)的能力 , 而且能被程序員翻譯成用程序設(shè)計(jì)語(yǔ)言書(shū)寫(xiě)的源程序 。 ? 常用的過(guò)程設(shè)計(jì)工具有: ? 圖形描述 ( 圖形工具 ) :把過(guò)程細(xì)節(jié)用圖形來(lái)表示 , 例如 , 流程圖 、 盒圖 、 問(wèn)題分析圖等 。 ? 表格描述 ( 表格工具 ) :把過(guò)程細(xì)節(jié)用表格形式表示 , 例如 , 判定表等 。 ? 語(yǔ)言描述 ( 語(yǔ)言工具 ) :把過(guò)程細(xì)節(jié)用語(yǔ)言形式表示 , 例如 , 偽代碼等 。 判定表 ? 判定表的設(shè)計(jì)步驟: ( 1) 列出與構(gòu)件過(guò)程相關(guān)的所有動(dòng)作; ( 2) 列出執(zhí)行該過(guò)程時(shí)的所有條件; ( 3) 確立特定條件組合與特定動(dòng)作的關(guān)聯(lián) , 找出所有可能的條件組合 , 清除不可能的條件組合 。 ( 4) 定義一組規(guī)則 , 指出某一組條件成立時(shí)對(duì)應(yīng)要執(zhí)行的動(dòng)作 。 ? 采用表格方式來(lái)表示具有條件分支情形的處理邏輯的一種工具; ? 表格分為四大部分: ① 左上角 條件說(shuō)明; ② 左下角 動(dòng)作說(shuō)明; ③ 右上角 條件組合; ④ 右下角 各種條件下組合下的行動(dòng); ? 有些條件組合在實(shí)際中可能是矛盾或無(wú)意義 , 需將它們刪除 。 有些組合條件下的行動(dòng)相同 , 可合并; 判定樹(shù) ? 表示經(jīng)過(guò)不同條件的判斷和決策,作出相應(yīng)處理的過(guò)程; ? 用于有條件分支情形; ? 方法: ①確定有哪些條件; ②確定每個(gè)條件有幾種可能的狀態(tài); ③確定有哪些動(dòng)作; ④確定每一項(xiàng)動(dòng)作要依賴(lài)哪些條件及取值; 軟件重用技術(shù) ? 重用的軟件單元規(guī)模: ? 應(yīng)用系統(tǒng)重用。 整個(gè)系統(tǒng)的重用,不作任何修改就可以融合到另一個(gè)系統(tǒng)中。 ? 構(gòu)件重用。 應(yīng)用系統(tǒng)的構(gòu)件規(guī)模從子系統(tǒng)到單個(gè)對(duì)象都可以重用。 ? 功能重用。 實(shí)現(xiàn)單一功能的軟件構(gòu)件可以重用。例如,標(biāo)準(zhǔn)函數(shù)庫(kù)提供的各種數(shù)學(xué)函數(shù)。 ?軟件重用可分為: ( 1) 知識(shí)重用; ( 2) 方法和標(biāo)準(zhǔn)重用; ( 3) 軟件成分重用 。 ?軟件成分重用又可劃分為 3類(lèi): ( 1) 代碼重用 ( 2) 設(shè)計(jì)結(jié)果重用 ( 3) 分析結(jié)果重用 ? 重用技術(shù)涉及: ( 1) 項(xiàng)目計(jì)劃:軟件項(xiàng)目計(jì)劃中的基本結(jié)構(gòu)和內(nèi)容 。 ( 2) 成本估計(jì): ( 3) 體系結(jié)構(gòu):在同一個(gè)領(lǐng)域中不同應(yīng)用系統(tǒng) , 其體系結(jié)構(gòu)幾乎是相同的 。 即使是不同領(lǐng)域 , 也很少有截然不同的體系結(jié)構(gòu) 。 ( 4) 需求模型和規(guī)格說(shuō)明: ( 5) 設(shè)計(jì):我們可以把已有的設(shè)計(jì)方案 , 進(jìn)行歸納 、 抽象 , 再對(duì)它們作描述 、 分類(lèi) , 可獲得一些可重用的設(shè)計(jì)模式 。 ( 6) 源代碼:源代碼的重用可能是談?wù)撟疃嗪蛻?yīng)用最早的地方 。 ( 7) 用戶(hù)文檔和技術(shù)文檔: ( 8) 用戶(hù)界面:圖形用戶(hù)界面是經(jīng)常被重用的 。 ( 9) 數(shù)據(jù): ( 10) 測(cè)試用例: 領(lǐng)域工程與應(yīng)用系統(tǒng)工程 ?由軟件重用理論和方法的發(fā)展帶來(lái)的另一個(gè)問(wèn)題:人們往往需要界定已有的可重用資產(chǎn),在這一活動(dòng)中需要建立一套界定方法,以確保被界定的可重用資產(chǎn)能正確地真正重用到一個(gè)體系結(jié)構(gòu),這個(gè)活動(dòng)可認(rèn)為是領(lǐng)域工程。 ?應(yīng)用系統(tǒng)開(kāi)發(fā)過(guò)程和重用過(guò)程,則稱(chēng)為應(yīng)用系統(tǒng)工程。系統(tǒng)的軟件重用實(shí)質(zhì)是,創(chuàng)建者先投資,有創(chuàng)建者界定并創(chuàng)建出可重用的構(gòu)件系統(tǒng),使用者在構(gòu)件系統(tǒng)的基礎(chǔ)上,很快地開(kāi)發(fā)出應(yīng)用系統(tǒng)。 ?基于重用構(gòu)件的過(guò)程模型 可重用構(gòu)件技術(shù) 構(gòu)件開(kāi)發(fā) ?在接收到一個(gè)請(qǐng)求 , 如果通過(guò)規(guī)格說(shuō)明匹配找到符合當(dāng)前應(yīng)用系統(tǒng)所需要的構(gòu)件 , 設(shè)計(jì)者就可把該構(gòu)件從構(gòu)件庫(kù)中提取出來(lái) , 并用到系統(tǒng)的設(shè)計(jì)中 , 如果沒(méi)有找到所需要的構(gòu)件 , 則要進(jìn)行構(gòu)件的創(chuàng)建 。 ?構(gòu)件設(shè)計(jì)時(shí)具體考慮: ( 1) 標(biāo)準(zhǔn)數(shù)據(jù):根據(jù)研究的應(yīng)用領(lǐng)域 , 標(biāo)識(shí)出標(biāo)準(zhǔn)的數(shù)據(jù)結(jié)構(gòu) 。 例如文件結(jié)構(gòu) 、 數(shù)據(jù)庫(kù)結(jié)構(gòu)等 。 ( 2) 標(biāo)準(zhǔn)接口協(xié)議:包括 3個(gè)層次的接口協(xié)議, 即模塊內(nèi)部的接口 、 外部接口和人機(jī)界面接口 。 ( 3) 程序模板:結(jié)構(gòu)模型可以作為新程序體系結(jié)構(gòu)設(shè)計(jì)的模板 。 構(gòu)件描述、分類(lèi)和檢索 ?構(gòu)件的創(chuàng)建者給出構(gòu)件的描述 , 以便管理和使用 。 Tracz提出的 3C模型是一種理想的描述方式 , 即概念 ( concept) 、 內(nèi)容 ( content) 、 語(yǔ)境 ( context) 。 ( 1) 概念:是構(gòu)件做什么的描述 , 應(yīng)該完整地描述構(gòu)件的接口 , 概念應(yīng)該表達(dá)出構(gòu)件的意圖 。 ( 2) 內(nèi)容:描述實(shí)現(xiàn)概念的方法 , 通常 , 內(nèi)容對(duì)一般用戶(hù)是隱藏的信息 , 只有那些打算修改該構(gòu)件的人才需要這些信息 。 ( 3) 語(yǔ)境:把可重用的軟件構(gòu)件置于其應(yīng)用領(lǐng)域中 ( 指定概念 、 操作 、 實(shí)現(xiàn)的特征 ) , 語(yǔ)境使得軟件工程師能夠找到適當(dāng)?shù)臉?gòu)件以滿(mǎn)足應(yīng)用需求 ( 應(yīng)用系統(tǒng)所要的構(gòu)件 ) 。 ? 為了能夠在實(shí)際環(huán)境中找到構(gòu)件,必須把構(gòu)件的描述轉(zhuǎn)換成具體的規(guī)格說(shuō)明模式。 ? 軟件構(gòu)件的分類(lèi)模式。目前,比較多地使用圖書(shū)館和信息科學(xué)分類(lèi)方法(圖書(shū)索引的分類(lèi)法)。構(gòu)件的檢索和分類(lèi)模式,可以遵照上述的 3C模式。 軟件重用的效益 ?質(zhì)量 ?生產(chǎn)率 ?成本 軟件設(shè)計(jì)模式 ?所謂設(shè)計(jì)模式是描述問(wèn)題以及經(jīng)過(guò)多次提煉的解決方案 , 我們可以在不同的設(shè)置環(huán)境下 , 一次又一次地使用該方案而不必做重復(fù)勞動(dòng) 。 設(shè)計(jì)模式的成分 ? 模式名稱(chēng):一個(gè)標(biāo)識(shí)符 ( 助記名 ) , 它用一個(gè)到兩個(gè)詞來(lái)描述該模式的設(shè)計(jì)的問(wèn)題 、 解決方案和效果 。 ? 問(wèn)題:描述了應(yīng)該在何時(shí)使用該模式 , 它解釋了設(shè)計(jì)問(wèn)題和問(wèn)題存在的背景 。 ? 解決方案:描述了設(shè)計(jì)的組成成分 , 即基本要素 , 它們之間的關(guān)系 、 各自的任務(wù)以及相互之間的協(xié)作方式 。 因?yàn)橐粋€(gè)模式就像一個(gè)模板 , 可以應(yīng)用于多種不同場(chǎng)合 。所以 , 解決方案并不描述一個(gè)特定而具體的設(shè)計(jì)或者實(shí)現(xiàn) , 而是提供設(shè)計(jì)問(wèn)題的抽象描述 , 抽象描述使我們可以把該模式應(yīng)用于解決許多不同的問(wèn)題 。 ? 效果:描述了模式應(yīng)用的效果和使用該模式要權(quán)衡的問(wèn)題 。 軟件設(shè)計(jì)模式的分類(lèi) 1. 抽象工廠 ( Abstract Factory) ? 提供一個(gè)創(chuàng)建一系列相關(guān)或相互依賴(lài)對(duì)象的接口 , 而無(wú)需指定其它的具體的類(lèi) 。 2. 適配器 ( Adapter) ? 將一個(gè)類(lèi)的接口轉(zhuǎn)換成客戶(hù)希望的另外一個(gè)接口 。 ? 該模式使得原本由于接口不兼容而不能一起工作的那些類(lèi)可以一起工作 。 3. 橋接 (Bridge) ? 將抽象部分與它的實(shí)現(xiàn)部分分離 , 使它們都可以獨(dú)立地變化 。 4. 生成器 (Builder) ? 將一個(gè)復(fù)雜對(duì)象的構(gòu)建與它的表示分離 , 使得同樣的構(gòu)建過(guò)程可以創(chuàng)建不同的表示 。 5. 職責(zé)鏈 (Chain of Responsibility) ? 為解除請(qǐng)求的發(fā)送者和接受者之間耦合 , 而使多個(gè)對(duì)象都有機(jī)會(huì)處理這個(gè)請(qǐng)求 。 將這些對(duì)象連成一條鏈 , 并沿著這一條鏈傳遞該請(qǐng)求 , 直到有一個(gè)對(duì)象處理它 。 6. 命令 (Command) ? 將一個(gè)請(qǐng)求封裝為一個(gè)對(duì)象,從而使得可以用不同的請(qǐng)求對(duì)客戶(hù)進(jìn)行參數(shù)化;對(duì)請(qǐng)求排隊(duì)或記錄請(qǐng)求日志,以及支持可取消的操作。 7. 組成 (Composite) ? 將對(duì)象組合成樹(shù)型結(jié)構(gòu) , 以表示部分 整體的層次結(jié)構(gòu)。 該模式使得客戶(hù)對(duì)單個(gè)對(duì)象和復(fù)合對(duì)象的使用具有一致性 。 8. 裝飾 (Decorator) ? 動(dòng)態(tài)地給一個(gè)對(duì)象添加一些額外的職責(zé) 。 就擴(kuò)展功能而言 , 該模式比生成子類(lèi)方式更為靈活 。 9. 外觀 (Facade) ? 為子系統(tǒng)中的一組接口提供一個(gè)一致的界面 , 該模式定義了一個(gè)高層接口 , 這個(gè)接口使得這一個(gè)子系統(tǒng)更加容易使用 。 10. 工廠方法 (Factory Method) ? 定義一個(gè)用于創(chuàng)建對(duì)象的接口 , 讓子類(lèi)決定將哪一個(gè)類(lèi)實(shí)例化 。 該模式使一個(gè)類(lèi)的實(shí)例化延遲到其子類(lèi) 。 11. 享元 (Flyweight) ? 運(yùn)用共享技術(shù)有效地支持大量細(xì)粒度的對(duì)象 。 12. 解釋器 (Interpreter) ? 給定一個(gè)語(yǔ)言 , 定義它的文法的一種表示 , 并定義一個(gè)解釋器 , 該解釋器使用該表示來(lái)解釋語(yǔ)言中的句子 。 13. 迭代器 (Iterator) ? 提供一種方法順序訪問(wèn)一個(gè)聚合對(duì)象中各個(gè)元素 , 而又不需要暴露該對(duì)象的內(nèi)部表示 。 14. 中介者 (Mdeiator) ? 用一個(gè)中介對(duì)象來(lái)封裝一系列的對(duì)象交互 。 中介者使各對(duì)象不需要顯式地相互引用 , 從而使其耦合松散 , 而且可以獨(dú)立地改變它們之間的交互 。 15. 備忘錄 (Memento) ? 在不破壞封裝性的前提下,捕獲一個(gè)對(duì)象的內(nèi)部狀態(tài),并在該對(duì)象之外保存這個(gè)狀態(tài)。這樣,以后就可將該對(duì)象恢復(fù)到保存的狀態(tài)。 16. 觀察者 (Observer) ? 定義對(duì)象間的一種一對(duì)多的依賴(lài)關(guān)系 , 以便當(dāng)一個(gè)對(duì)象的狀態(tài)發(fā)生改變時(shí) , 所有依賴(lài)于它的對(duì)象都得到通知并自動(dòng)刷新 。 17. 原型 (Prototype) ? 用原型實(shí)例指定創(chuàng)建對(duì)象的種類(lèi) , 并且通過(guò)拷貝這個(gè)原型來(lái)創(chuàng)建新的對(duì)象 。 18. 代理 (Proxy) ? 為其他對(duì)象提供一個(gè)代理以控制對(duì)這個(gè)對(duì)象的訪問(wèn) 。 19. 單件 (Singleton) ? 保證一個(gè)類(lèi)僅有一個(gè)實(shí)例 , 并提供一個(gè)訪問(wèn)它的全局訪問(wèn)點(diǎn) 。 20. 狀態(tài) (State) ? 允許一個(gè)對(duì)象在其內(nèi)部狀態(tài)改變時(shí)改變它的行為 。 對(duì)象看起來(lái)似乎修改了它所屬的類(lèi) 。 21. 策略 (Strategy) ? 定義一系列的算法 , 把它們一個(gè)個(gè)封裝起來(lái) , 并且使它們可以相互替換 , 該模式使得算法的變化可獨(dú)立于使用它的客戶(hù) 。 22. 模板方法 (Template Method) ? 定義一個(gè)操作中的算法的骨架 , 而將一些步驟延遲到子類(lèi)中 。 該模式使得子類(lèi)可以不改變一個(gè)算法的結(jié)構(gòu) , 就可以重定義該算法的某些特定步驟 。 23. 訪問(wèn)者 (Visitor) ? 表示一個(gè)作用于某對(duì)象結(jié)構(gòu)中的各元素的操作 , 它可以在不改變各元素的類(lèi)的前提下定義作用于這些元素的新操作 。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1