

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第三章軟件體系結(jié)構(gòu)及軟件設(shè)計(jì)模式概述,本章主要內(nèi)容,軟件體系結(jié)構(gòu)概述典型軟件體系結(jié)構(gòu)分析MVC框架模式介紹軟件設(shè)計(jì)模式概述,軟件體系結(jié)構(gòu),概念作用軟件體系結(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),管道和過濾器,倉庫系統(tǒng)及知識(shí)
2、庫,瀏覽器/服務(wù)器風(fēng)格,層次體系結(jié)構(gòu),層次風(fēng)格特點(diǎn),每層為上一層提供服務(wù),使用下一層的服務(wù),只能見到與自己鄰接的層適當(dāng)時(shí)候(必不得已的時(shí)候),可以允許一定的越層操作大的問題分解為若干個(gè)漸進(jìn)的小問題,逐步解決,隱藏了很多復(fù)雜度修改一層,最多影響兩層,而通常只能影響上層。接口穩(wěn)固,則誰都不影響,層次風(fēng)格特點(diǎn),上層必須知道下層的身份,不能調(diào)整層次之間的順序存在的問題:并不是每個(gè)系統(tǒng)都可以很容易地劃分為層次的模式性能與抽象的程度相關(guān)
3、,但是很難找到一個(gè)合適的、正確的層次抽象方法,三層體系結(jié)構(gòu),三層體系結(jié)構(gòu),CS三層體系結(jié)構(gòu)特點(diǎn):服務(wù)器和客戶可以完全異構(gòu),只要遵從統(tǒng)一的網(wǎng)絡(luò)協(xié)議客戶必須知道服務(wù)器的地址客戶之間的信息傳遞要經(jīng)過服務(wù)器中轉(zhuǎn)可以擴(kuò)展出客戶之間的直接通信機(jī)制,三層體系結(jié)構(gòu),BS三層體系結(jié)構(gòu)特點(diǎn):使用標(biāo)準(zhǔn)http/https協(xié)議,一致性好必須由客戶主動(dòng)連接服務(wù)器客戶端有http瀏覽器即可為增強(qiáng)功能,往往還需要安裝flash、jvm及一些專用插件
4、服務(wù)器的負(fù)荷大,客戶機(jī)的資源浪費(fèi),三層體系結(jié)構(gòu),CS/BS混合結(jié)構(gòu)綜合了兩者的優(yōu)點(diǎn)缺點(diǎn)?,體系結(jié)構(gòu)設(shè)計(jì)思想,分層分解風(fēng)格,幾個(gè)術(shù)語,架構(gòu)、框架、模式是一種從大到小的關(guān)系,也是一種組合關(guān)系架構(gòu)一般是描述系統(tǒng)各個(gè)部分的骨架,要求是穩(wěn)定的、容變的框架比較小,很多表現(xiàn)為中間件,框架一般是從技術(shù)上的橫切面去解決實(shí)際應(yīng)用問題模式則更小了,越小越靈活,可重用的范圍更廣,幾個(gè)術(shù)語,構(gòu)件是可復(fù)用的軟件組成成份,可被用來構(gòu)造其他軟件
5、組件是封裝好的對象,如控件等中間件是基于分布式處理的軟件,是一種獨(dú)立的系統(tǒng)軟件或服務(wù)程序一個(gè)架構(gòu)有可能應(yīng)用了多個(gè)框架,而一個(gè)框架可能使用了多個(gè)模式,MVC框架模式,概念作用典型的MVC模式,MVC框架模式,最早由Trygve Reenskaug提出的用于SmallTalk的MVC模式,MVC框架模式,常用于Web框架和GUI框架的MVC模式,MVC框架模式,GUI框架的MVC模式,MVC框架模式,基于UI擴(kuò)展的MVC模式,M
6、VC框架模式,泛UI層UI-MVC模式,軟件體系結(jié)構(gòu)設(shè)計(jì)總結(jié),體系結(jié)構(gòu)設(shè)計(jì)主要是從較高的抽象層次來對軟件系統(tǒng)進(jìn)行設(shè)計(jì)體系結(jié)構(gòu)設(shè)計(jì)強(qiáng)調(diào)系統(tǒng)如何分解、分層,各模塊間的關(guān)系以及模塊間如何相互作用沒有一種完全通用的體系結(jié)構(gòu)風(fēng)格,不同體系結(jié)構(gòu)風(fēng)格會(huì)對整個(gè)系統(tǒng)的質(zhì)量產(chǎn)生不同影響,軟件設(shè)計(jì)模式,設(shè)計(jì)模式:描述了在面向?qū)ο筌浖O(shè)計(jì)過程中針對特定問題的簡潔而優(yōu)雅的解決方案設(shè)計(jì)模式捕獲了隨時(shí)間進(jìn)化與發(fā)展的問題的求解方法,而這些都來自軟件開發(fā)者為了設(shè)計(jì)
7、出靈活可復(fù)用的軟件而長時(shí)間進(jìn)行的艱苦努力。設(shè)計(jì)模式捕獲了這些解決方案,并用簡潔易用的方式表達(dá)出來。,軟件設(shè)計(jì)模式,設(shè)計(jì)模式并不要求使用獨(dú)特的語言特性,也不需要特殊的編程技巧和算法,所有的模式均可以用標(biāo)準(zhǔn)的面向?qū)ο笳Z言實(shí)現(xiàn)有時(shí)設(shè)計(jì)模式的解法需要多費(fèi)一些功夫,但是為了增加軟件的靈活性和可復(fù)用性,多做些工作是值得的,軟件設(shè)計(jì)模式,一旦你理解了設(shè)計(jì)模式并且有了一種“Aha!”(而不是“Huh?”)的應(yīng)用經(jīng)驗(yàn)和體驗(yàn)后,你將用一種非同尋常的方式思
8、考面向?qū)ο笤O(shè)計(jì)你將擁有一種深刻的洞察力,可以幫助你設(shè)計(jì)出更加靈活的、模塊化的、可復(fù)用的和易理解的軟件—這也是面向?qū)ο蠹夹g(shù)的最大優(yōu)勢所在,軟件設(shè)計(jì)模式,所有結(jié)構(gòu)良好的面向?qū)ο筌浖w系結(jié)構(gòu)中都包含了許多模式。模式在構(gòu)造復(fù)雜系統(tǒng)時(shí)的重要性早已在多個(gè)領(lǐng)域中被認(rèn)可設(shè)計(jì)模式為開發(fā)人員提供了一種學(xué)習(xí)和使用專家設(shè)計(jì)經(jīng)驗(yàn)的有效途徑。它能使所生成的系統(tǒng)體系結(jié)構(gòu)更加精巧、簡潔和易于理解,軟件設(shè)計(jì)模式分類,基本模式創(chuàng)建模式集合模式結(jié)構(gòu)模式行為模式
9、并發(fā)模式,基本模式,接口、抽象父類私有方法存取器方法常量數(shù)據(jù)管理器不便對象管程,創(chuàng)建模式,工廠方法抽象工廠單例原型構(gòu)造者,集合模式,合成迭代子享元訪問者,結(jié)構(gòu)模式,裝飾器適配器責(zé)任鏈外觀代理橋接對象緩存器,行為模式,命令調(diào)停者備忘錄觀察者解釋器模板方法策略,并發(fā)模式,臨界區(qū)協(xié)同鎖安全掛起讀寫鎖,設(shè)計(jì)模式學(xué)習(xí)建議,有一些提示和鼓勵(lì):第一次閱讀此書時(shí)你可能不會(huì)完全理解它,但不必著急,我們
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 軟件設(shè)計(jì)模式與體系結(jié)構(gòu)
- 軟件設(shè)計(jì)與體系結(jié)構(gòu)復(fù)習(xí)整理題目及答案
- 軟件設(shè)計(jì)與體系結(jié)構(gòu)-實(shí)驗(yàn)指導(dǎo)書
- 淺談軟件設(shè)計(jì)的需求分析與體系結(jié)構(gòu)
- 軟件體系結(jié)構(gòu)及基于軟件體系結(jié)構(gòu)的系統(tǒng)開發(fā).pdf
- 軟件工程軟件體系結(jié)構(gòu)
- 軟件體系結(jié)構(gòu)作業(yè)
- 軟件體系結(jié)構(gòu)題庫
- 軟件體系結(jié)構(gòu)中劇場模式初探及應(yīng)用.pdf
- 軟件體系結(jié)構(gòu)文檔
- 軟件體系結(jié)構(gòu)期末論文
- webservice軟件體系結(jié)構(gòu)分析
- 軟件體系結(jié)構(gòu)大作業(yè)
- 淺談軟件體系結(jié)構(gòu)評估
- 軟件體系結(jié)構(gòu)描述方法
- 面向模式的軟件體系結(jié)構(gòu)的研究.pdf
- 基于軟件模式的視景仿真系統(tǒng)軟件體系結(jié)構(gòu)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 《軟件體系結(jié)構(gòu)》教學(xué)大綱
- 軟件體系結(jié)構(gòu)復(fù)習(xí)題
- 軟件體系結(jié)構(gòu)風(fēng)格分析論文
評論
0/150
提交評論