




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
經(jīng)典word整理文檔,僅參考,雙擊此處可刪除頁(yè)眉頁(yè)腳。本資料屬于網(wǎng)絡(luò)整理,如有侵權(quán),請(qǐng)聯(lián)系刪除,謝謝!1引言從上世紀(jì)60年代末開始,由于計(jì)算機(jī)軟件對(duì)生產(chǎn)力有巨大的推動(dòng)作用,各可維護(hù)性明顯降低,軟件行業(yè)出現(xiàn)了危機(jī)。直到80年代,軟件開發(fā)采用面向?qū)θ?,往往修改一處代碼會(huì)帶來無(wú)法預(yù)測(cè)的后果;系統(tǒng)復(fù)用率低,黏度過高等等。為了避免上述缺陷,設(shè)計(jì)出具備良好的可擴(kuò)展性、可復(fù)用性、易維護(hù)性的系統(tǒng),我們應(yīng)在系統(tǒng)設(shè)計(jì)和實(shí)踐階段采用設(shè)計(jì)模式的思想。設(shè)計(jì)模式是軟件復(fù)用技術(shù)中的一個(gè)重要概念[1]對(duì)象的軟件設(shè)計(jì)經(jīng)驗(yàn)記錄下來,并予以系統(tǒng)的命名、解釋和評(píng)價(jià),使不同的開發(fā)人員在進(jìn)行不同系統(tǒng)的設(shè)計(jì)與開發(fā)時(shí),可以使用別人的成功經(jīng)驗(yàn)而不必為普通的、重復(fù)的問題重新設(shè)計(jì)解決方案,使設(shè)計(jì)者更容易理解其設(shè)計(jì)思路,能為自己設(shè)計(jì)模式的種類日益增多,相對(duì)于GoF在1994年提出的23種通用設(shè)計(jì)模式,來進(jìn)行探討。[2]2從設(shè)計(jì)原則到設(shè)計(jì)模式2.1設(shè)計(jì)原則對(duì)象有幾個(gè)原則:開閉原則、里氏代換原則、依賴倒轉(zhuǎn)原則、接口隔離原則、合成/聚合復(fù)用原則、最小知識(shí)原則、單一職責(zé)原則和抽象原則。開閉原則具有理性的目的。(1)開閉原則在不修改原來代碼的情況下進(jìn)行擴(kuò)展。這樣在擴(kuò)展的同時(shí)對(duì)舊版本有很好的支持,使得系統(tǒng)更加靈活,具有很強(qiáng)的適應(yīng)性。(2)里氏代換原則現(xiàn)好的方法(相對(duì)于抽象方法而言),實(shí)際上是在設(shè)定一系列的規(guī)范和契約,雖任意修改,就會(huì)對(duì)整個(gè)繼承體系造成破壞。代碼復(fù)用的重要基礎(chǔ)。(3)合成復(fù)用原則合成是值的聚合,聚合是引用的聚合。合成和聚合都是關(guān)聯(lián)的特殊種類,聚合表示整體和部分的關(guān)系,表示“擁有”;合成則是一種更強(qiáng)的“擁有”,部分開發(fā)中應(yīng)盡量使用合成/聚合,而不是使用繼承。(4)依賴倒轉(zhuǎn)原則編程;傳遞參數(shù),或者在組合聚合關(guān)系中,盡量引用層次高的類。高層模塊不應(yīng)操作,把展現(xiàn)細(xì)節(jié)的任務(wù)交給他們的實(shí)現(xiàn)類去完成。(5)接口隔離原則小的接口上。建立單一接口,不要建立龐大臃腫的接口,盡量細(xì)化接口,接口中賴一個(gè)綜合的接口更靈活。接口是設(shè)計(jì)時(shí)對(duì)外部設(shè)定的“契約”,通過分散定義不能交給一個(gè)接口。(6)抽象原則用抽象構(gòu)建框架,用實(shí)現(xiàn)擴(kuò)展細(xì)節(jié)。因?yàn)槌橄箪`活性好,適應(yīng)性廣,只要抽類的共同屬性和方法。具體類是不被其他類所繼承的,即子類繼承了抽象類后,這個(gè)子類不應(yīng)再被其他類所繼承。(7)迪米特法則心做自己的事情而不去關(guān)心其他的事情,以降低耦合度。(8)單一職責(zé)原則面向?qū)ο缶幊趟枷胨赜械?,只要是模塊化的程序設(shè)計(jì),都適用單一職責(zé)原則。2.2設(shè)計(jì)模式設(shè)計(jì)模式是一些富有經(jīng)驗(yàn)的面向?qū)ο蠹夹g(shù)專家針對(duì)特定問題而設(shè)計(jì)的成功是設(shè)計(jì)模式。[1]代碼編制真正工程化,如同大廈的結(jié)構(gòu)一樣,設(shè)計(jì)模式是軟件工程的基石脈絡(luò)。一般而言,一個(gè)模式有四個(gè)基本要素:模式名稱、問題(描述應(yīng)該在何時(shí)使用模式)、解決方案(描述設(shè)計(jì)的組成成分、它們之間的相互關(guān)系及各自的職責(zé)和協(xié)作方式)、效果(描述模式應(yīng)用的效果及使用模式應(yīng)權(quán)衡的問題)。2.3設(shè)計(jì)思想種可重用的解決方案,在軟件工程中一個(gè)設(shè)計(jì)模式往往能解決一類軟件設(shè)計(jì)問和體系結(jié)構(gòu),采用設(shè)計(jì)模式的軟件系統(tǒng)具有更好的可維護(hù)性。軟件在不斷進(jìn)化,需求在不斷改變,所以軟件應(yīng)該適應(yīng)變化。設(shè)計(jì)模式是[3]讓變化的影響最小;封裝復(fù)雜性,提供簡(jiǎn)單的接口;針對(duì)接口編程,而不是針對(duì)實(shí)現(xiàn)編程;最大程度地繼承、組合、委托、多態(tài)和參數(shù)化。職責(zé)之間相關(guān)程度和集中程度的度量[4]相關(guān)的職責(zé)不要分派給同一個(gè)類。UI)、業(yè)務(wù)邏輯層(BLL)、數(shù)據(jù)訪問層(DAL)。區(qū)分層次的目的即為了高內(nèi)聚,低耦合的思想。可復(fù)用面向?qū)ο筌浖到y(tǒng)現(xiàn)在一般劃分為兩大類:應(yīng)用程序工具箱和框架,我們平時(shí)開發(fā)的具體軟件都是應(yīng)用程序,Java的API屬于工具箱;而框架是構(gòu)成一類特定軟件可復(fù)用設(shè)計(jì)的一組相互協(xié)作的類,EJB是Java應(yīng)用于企業(yè)計(jì)算中共同的設(shè)計(jì)決策,框架強(qiáng)調(diào)設(shè)計(jì)復(fù)用,因此框架設(shè)計(jì)中必然要使用設(shè)計(jì)模式。,熟悉這些設(shè)計(jì)模式可幫助我們掌握EJB、J2EE等框架的結(jié)構(gòu)。3GRASP職責(zé)分配模式與設(shè)計(jì)模式的應(yīng)用價(jià)值GRASP作為設(shè)計(jì)模式來描述對(duì)象設(shè)計(jì)和職責(zé)分配的基本原則。GRASP原Adapters所需的Adapter,我們應(yīng)用工廠模式,設(shè)計(jì)一個(gè),按系統(tǒng)當(dāng)前的要求實(shí)例化相應(yīng)的;為了系統(tǒng)中同一類的Adapters實(shí)例具有唯一的創(chuàng)建邏輯,我們應(yīng)用單實(shí)例類模式,使Factory在系統(tǒng)中僅有唯一的一個(gè)實(shí)例。的維護(hù)量。4小結(jié)方向
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 消保知識(shí)培訓(xùn)計(jì)劃表課件
- 2025年安徽交控集團(tuán)所屬安徽交控石油有限公司招聘16人模擬試卷及答案詳解(奪冠)
- 2025湖南邵陽(yáng)市洞口縣博雅學(xué)校第二期教師招聘13人考前自測(cè)高頻考點(diǎn)模擬試題附答案詳解(黃金題型)
- 2025河南農(nóng)業(yè)投資集團(tuán)子公司招聘13人考前自測(cè)高頻考點(diǎn)模擬試題及完整答案詳解一套
- 2025遼寧沈陽(yáng)城市建設(shè)投資集團(tuán)有限公司所屬企業(yè)沈陽(yáng)城投新能源集團(tuán)有限公司市場(chǎng)化選聘職業(yè)經(jīng)理人1人模擬試卷附答案詳解(完整版)
- 2025安徽安慶職業(yè)技術(shù)學(xué)院高層次人才引進(jìn)7人考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解一套
- 安全培訓(xùn)考核難不難課件
- 2025年南平政和縣衛(wèi)健系統(tǒng)事業(yè)單位公開招聘緊缺急需專業(yè)工作人員模擬試卷附答案詳解(完整版)
- 2025安徽黃山市黃山區(qū)醫(yī)療衛(wèi)生急需緊缺人才招聘5人考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解(歷年真題)
- 2025華天集團(tuán)中層管理崗位公開招聘模擬試卷附答案詳解(考試直接用)
- 湘潭鋼鐵集團(tuán)有限公司2026屆校園操作類招聘?jìng)淇伎荚囶}庫(kù)附答案解析
- 合肥市社會(huì)化工會(huì)工作者招聘考試真題2024
- 恐龍媽媽藏蛋課件
- 2025浙江杭州市西湖區(qū)民政局招聘編外合同制工作人員3人筆試備考試題附答案詳解(滿分必刷)
- 靜脈留置針應(yīng)用及維護(hù)
- 演講與朗誦教學(xué)課件
- 《中國(guó)急性腎損傷臨床實(shí)踐指南(2023版)-》解讀
- 弗洛伊德課件
- 《CSCO乳腺癌診療指南2025》更新要點(diǎn)解讀
- 2025年教師師德師風(fēng)考試題(附答案)
- “一村一輔警”人員登記表
評(píng)論
0/150
提交評(píng)論