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

正文內(nèi)容

[工學(xué)]計(jì)算機(jī)體系結(jié)構(gòu)(已修改)

2025-02-02 13:06 本頁面
 

【正文】 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 軟件體系結(jié)構(gòu)設(shè)計(jì)的核心問題 能否使用重復(fù)的體系結(jié)構(gòu)模式 ,即能否達(dá)到體系結(jié)構(gòu)級的軟件 重用 。 ◇ 定義 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 軟件體系結(jié)構(gòu)風(fēng)格概述 軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的 慣用模式 。 體系結(jié)構(gòu)風(fēng)格定義了一個(gè)系統(tǒng)家族 , 即一個(gè)體系結(jié)構(gòu)定義 一個(gè)詞匯表 和 一組約束 。 詞匯表中包含一些構(gòu)件和連接件類型 , 而這組約束指出系統(tǒng)是如何將這些構(gòu)件和連接件組合起來的 。 體系結(jié)構(gòu)風(fēng)格反映了領(lǐng)域中眾多系統(tǒng) 所共有的結(jié)構(gòu)和語義特性 , 并指導(dǎo)如何將各個(gè)模塊和子系統(tǒng)有效地組織成一個(gè)完整的系統(tǒng) 。 ◇ 討論體系結(jié)構(gòu)風(fēng)格時(shí)要回答的問題 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 軟件體系結(jié)構(gòu)風(fēng)格概述 ◎ 構(gòu)件和連接件的類型是什么 ? ◎ 可容許的結(jié)構(gòu)模式是什么 ? ◎ 基本的計(jì)算模型是什么 ? ◎ 風(fēng)格的基本不變性是什么 ? ◎ 其使用的常見例子是什么 ? ◎ 使用此風(fēng)格的優(yōu)缺點(diǎn)是什么 ? ◎ 其常見的特例是什么 ? ◇ 經(jīng)典的體系結(jié)構(gòu)風(fēng)格 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 軟件體系結(jié)構(gòu)風(fēng)格概述 ◎ 數(shù)據(jù)流風(fēng)格: 批處理序列;管道 /過濾器 。 ◎ 調(diào)用 /返回風(fēng)格: 主程序 /子程序;面向?qū)ο箫L(fēng)格;層次結(jié)構(gòu) 。 ◎ 獨(dú)立構(gòu)件風(fēng)格: 進(jìn)程通訊;事件系統(tǒng) 。 ◎ 虛擬機(jī)風(fēng)格: 解釋器;基于規(guī)則的系統(tǒng) 。 ◎ 倉庫風(fēng)格: 數(shù)據(jù)庫系統(tǒng);超文本系統(tǒng);黑板系統(tǒng) 。 ◇ 管道和過濾器 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 每個(gè)構(gòu)件都有一組輸入和輸出 , 構(gòu)件讀 輸入的數(shù)據(jù)流 ,經(jīng)過內(nèi)部處理 , 然后產(chǎn)生 輸出數(shù)據(jù)流 。 這個(gè)過程通常通過對 輸入流的變換 及 增量計(jì)算 來完成 , 所以 在輸入被完全消費(fèi)之前 , 輸出便產(chǎn)生了 。 這里的 構(gòu)件 被稱為 過濾器 , 這種風(fēng)格的連接件就象是數(shù)據(jù)流傳輸?shù)墓艿?, 將一個(gè)過濾器的輸出傳到另一過濾器的輸入 。 ◇ 管道和過濾器 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 過濾器管道◇ 管道和過濾器風(fēng)格的優(yōu)點(diǎn) 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 ◎ 使得軟構(gòu)件具有良好的隱蔽性和高內(nèi)聚 、 低耦合的特點(diǎn); ◎ 允許設(shè)計(jì)者將整個(gè)系統(tǒng)的輸入 /輸出行為看成是多個(gè)過濾器的行為的簡單合成; ◎ 支持軟件重用 。 只要提供適合在兩個(gè)過濾器之間傳送的數(shù)據(jù) ,任何兩個(gè)過濾器都可被連接起來; ◎ 系統(tǒng)維護(hù)和增強(qiáng)系統(tǒng)性能簡單 。 新的過濾器可以添加到現(xiàn)有系統(tǒng)中來;舊的可以被改進(jìn)的過濾器替換掉; ◎ 允許對一些如吞吐量 、 死鎖等屬性的分析; ◎ 支持并行執(zhí)行 。 每個(gè)過濾器是作為一個(gè)單獨(dú)的任務(wù)完成 , 因此可與其它任務(wù)并行執(zhí)行 。 ◇ 管道和過濾器的缺點(diǎn) 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 ◎ 通常導(dǎo)致進(jìn)程成為批處理的結(jié)構(gòu) 。 這是因?yàn)殡m然過濾器可增量式地處理數(shù)據(jù) , 但它們是獨(dú)立的 , 所以設(shè)計(jì)者必須將每個(gè)過濾器看成一個(gè)完整的從輸入到輸出的轉(zhuǎn)換; ◎ 不適合處理交互的應(yīng)用 。 當(dāng)需要增量地顯示改變時(shí) , 這個(gè)問題尤為嚴(yán)重; ◎ 因?yàn)樵跀?shù)據(jù)傳輸上沒有通用的標(biāo)準(zhǔn) , 每個(gè)過濾器都增加了解析和合成數(shù)據(jù)的工作 , 這樣就導(dǎo)致了系統(tǒng)性能下降 , 并增加了編寫過濾器的復(fù)雜性 。 ◇ 數(shù)據(jù)抽象和面向?qū)ο蠼M織 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 這種風(fēng)格建立在 數(shù)據(jù)抽象 和 面向?qū)ο?的基礎(chǔ)上 , 數(shù)據(jù)的表示方法和它們的相應(yīng)操作封裝在一個(gè) 抽象數(shù)據(jù)類型 或 對象 中 。 這種風(fēng)格的 構(gòu)件 是 對象 , 或者說是抽象數(shù)據(jù)類型的實(shí)例 。 對象是一種被稱作 管理者 的構(gòu)件 , 因?yàn)樗?fù)責(zé)保持資源的完整性 。 對象是通過 函數(shù)和過程 的調(diào)用來交互的 。 ◇ 數(shù)據(jù)抽象和面向?qū)ο蠼M織 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 對象抽象數(shù)據(jù)類型過程調(diào)用對象對象對象對象◇ 面向?qū)ο笙到y(tǒng)的優(yōu)點(diǎn) 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 ◎ 因?yàn)閷ο髮ζ渌鼘ο箅[藏它的表示 , 所以可以改變一個(gè)對象的表示 , 而不影響其它的對象; ◎ 設(shè)計(jì)者可將一些數(shù)據(jù)存取操作的問題分解成一些交互的代理程序的集合 。 ◇ 面向?qū)ο笙到y(tǒng)的缺點(diǎn) 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 ◎ 為了使一個(gè)對象和另一個(gè)對象通過過程調(diào)用等進(jìn)行交互 , 必須知道對象的標(biāo)識 。 只要一個(gè)對象的標(biāo)識改變了 , 就必須修改所有其他明確調(diào)用它的對象; ◎ 必須修改所有顯式調(diào)用它的其它對象 , 并消除由此帶來的一些副作用 。 例如 , 如果 A使用了對象 B, C也使用了對象 B, 那么 , C對 B的使用所造成的對 A的影響可能是料想不到的 。 ◇ 基于事件的隱式調(diào)用 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 構(gòu)件不直接調(diào)用一個(gè)過程 , 而是觸發(fā)或廣播一個(gè)或多個(gè)事件 。系統(tǒng)中的其它構(gòu)件中的過程在一個(gè)或多個(gè)事件中注冊 , 當(dāng)一個(gè)事件被觸發(fā) , 系統(tǒng)自動(dòng)調(diào)用在這個(gè)事件中注冊的所有過程 , 這樣 , 一個(gè)事件的觸發(fā)就導(dǎo)致了另一模塊中的過程的調(diào)用 。 這種風(fēng)格的構(gòu)件是一些模塊 , 模塊既可以是一些過程 , 又可以是一些事件的集合 。 過程可以用通用的方式調(diào)用 , 也可以在系統(tǒng)事件中注冊一些過程 , 當(dāng)發(fā)生這些事件時(shí) , 過程被調(diào)用 。 這種風(fēng)格的主要特點(diǎn)是 事件的觸發(fā)者并不知道哪些構(gòu)件會(huì)被這些事件影響 。 這樣不能假定構(gòu)件的處理順序 , 甚至不知道哪些過程會(huì)被調(diào)用 , 因此 , 許多隱式調(diào)用的系統(tǒng)也包含顯式調(diào)用作為構(gòu)件交互的補(bǔ)充形式 。 ◇ 基于事件的隱式調(diào)用的優(yōu)點(diǎn) 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 ◎ 為軟件重用提供了強(qiáng)大的支持 。 當(dāng)需要將一個(gè)構(gòu)件加入現(xiàn)存系統(tǒng)中時(shí) , 只需將它注冊到系統(tǒng)的事件中 。 ◎ 為改進(jìn)系統(tǒng)帶來了方便 。 當(dāng)用一個(gè)構(gòu)件代替另一個(gè)構(gòu)件時(shí) , 不會(huì)影響到其它構(gòu)件的接口 。 ◇ 基于事件的隱式調(diào)用的缺點(diǎn) 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 ◎ 構(gòu)件放棄了對系統(tǒng)計(jì)算的控制 。 一個(gè)構(gòu)件觸發(fā)一個(gè)事件時(shí) ,不能確定其它構(gòu)件是否會(huì)響應(yīng)它 。 而且即使它知道事件注冊了哪些構(gòu)件的構(gòu)成 , 它也不能保證這些過程被調(diào)用的順序 。 ◎ 數(shù)據(jù)交換的問題 。 有時(shí)數(shù)據(jù)可被一個(gè)事件傳遞 , 但另一些情況下 , 基于事件的系統(tǒng)必須依靠一個(gè) 共享的倉庫 進(jìn)行交互 。 在這些情況下 , 全局性能和資源管理便成了問題 。 ◎ 既然過程的語義必須依賴于被觸發(fā)事件的上下文約束 , 關(guān)于正確性的推理存在問題 。 ◇ 分層系統(tǒng) 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 層次系統(tǒng)組織成一個(gè)層次結(jié)構(gòu) , 每一層為上層服務(wù) , 并作為下層客戶 。 在一些層次系統(tǒng)中 , 除了一些精心挑選的輸出函數(shù)外 ,內(nèi)部的層只對相鄰的層可見 。 這樣的系統(tǒng)中構(gòu)件在一些層實(shí)現(xiàn)了虛擬機(jī) ( 在另一些層次系統(tǒng)中層是部分不透明的 ) 。 連接件通過決定層間如何交互的協(xié)議來定義 , 拓?fù)浼s束包括對相鄰層間交互的約束 。 這種風(fēng)格支持 基于可增加抽象層的設(shè)計(jì) 。 允許將一個(gè)復(fù)雜問題分解成一個(gè) 增量步驟序列 的實(shí)現(xiàn) 。 由于 每一層最多只影響兩層 ,同時(shí)只要給相鄰層提供相同的接口 , 允許每層用不同的方法實(shí)現(xiàn) ,同樣為軟件重用提供了強(qiáng)大的支持 。 ◇ 分層系統(tǒng) 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 核心層基本工具用戶系統(tǒng)各種構(gòu)件過程調(diào)用◇ 分層系統(tǒng)的優(yōu)點(diǎn) 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格 ◎ 支持基于抽象程度遞增的系統(tǒng)設(shè)計(jì) , 使設(shè)計(jì)者可以把一個(gè)復(fù)雜系統(tǒng)按遞增的步驟進(jìn)行分解; ◎ 支持功能增強(qiáng) , 因?yàn)槊恳粚又炼嗪拖噜彽纳舷聦咏换?, 因此功能的改變最多影響相鄰的上下層; ◎ 支持重用 。 只要提供的服務(wù)接口定義不變 , 同一層的不同實(shí)現(xiàn)可以交換使用 。 這樣 , 就可以定義一組標(biāo)準(zhǔn)的接口 , 而
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1