設(shè)計模式2.ppt_第1頁
設(shè)計模式2.ppt_第2頁
設(shè)計模式2.ppt_第3頁
設(shè)計模式2.ppt_第4頁
設(shè)計模式2.ppt_第5頁
已閱讀5頁,還剩30頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第三章結(jié)構(gòu)型設(shè)計模式,1 .適配器模式、將一個接口轉(zhuǎn)換為客戶需要的另一個接口,然后使用不兼容的類協(xié)同工作。電腦電源線是適配器。電源插座是電流使用的接口。但是,牙齒接口與計算機相比不能直接使用,因此,它是計算機的外部庫接口,電源線連接了電流提供的接口和計算機,最終為計算機提供工作電壓?;瘜W數(shù)據(jù)銀杏3360、2。橋接模式將抽象部分和實現(xiàn)部分分開,允許兩部分獨立更改。與、和構(gòu)建程序模式不同,這是在windows中查看圖像的軟件。現(xiàn)在,您需要在Linux中查看映像,改進設(shè)計,并使用軟件系統(tǒng)輕松擴展。使用工廠模式:在builder模式下實現(xiàn)和比較,使用橋接模式,3 .組合模式(Composite Pat

2、tern),在通常由程序員開發(fā)的系統(tǒng)中,組件可以是單個對象或?qū)ο蠹?。組合模式包含兩種茄子情況,您可以使用組合模式來組織整個層次結(jié)構(gòu)的部分或構(gòu)建數(shù)據(jù)的樹表示法。總而言之,組合是對象的集合,每個對象可以是組合,也可以是簡單的對象。在樹術(shù)語中,對象可以是具有不同分支的節(jié)點或樹葉。說明圖形對象、許多遠視節(jié)點(如線、圓、矩形等)或許多復雜組合節(jié)點(如點、線、圓等的組合),以及文檔格式化程序:將字符(Character)格式化為文本行(如列和頁面可以有“框架”(Frame)牙齒,牙齒框可以容納列。列、框和行可以包含圖片。組合模式定義包含簡單對象和復雜組合對象的類層次結(jié)構(gòu),并為客戶端程序提供一致性。這種簡

3、化使得客戶端變得相當簡單,因為節(jié)點和樹葉可以用相同的方式處理。使用組合模式,只要提供類似的編程接口,就可以輕松將新類型的組件添加到集合中。另一方面,限制特定類的功能(如葉部件)很困難,但通常您可能希望這樣做。4 .裝飾模式(Decorator Pattern),裝飾模式提供了更改單個對象行為的方法,而無需創(chuàng)建新的派生類。假設(shè)有一個使用8個對象的程序,其中3個需要不同的屬性。您可以為三個牙齒對象創(chuàng)建派生類。如果這三個對象中的每個對象徐璐需要不同的屬性,則必須創(chuàng)建三個派生類。此外,如果一個類具有其他兩個類的屬性,則可以創(chuàng)建更復雜的類,從而導致混淆和不必要的結(jié)果。您想在工具欄上繪制帶有特定邊框的按鈕

4、。創(chuàng)建新的Button派生類時,這意味著新類中的所有按鈕都具有相同的邊框。創(chuàng)建Decorator類以裝飾按鈕,然后從Decorator類派生多個特定的Decorator。每個派生類完成特定的裝飾。ConcreteComponent和Decorator為什么需要公共基類?使用適配器模式、組合模式和裝飾模式的相似性和差異、裝飾模式向圖書館中的項目添加“可借用”功能。裝飾模式提供了比靜態(tài)繼承更大的靈活性,允許開發(fā)一系列功能類,以便在不污染原始代碼的情況下輕松編寫代碼。類的使用都是由裝飾類實現(xiàn)的,因此可擴展性更高。(威廉莎士比亞、模板、代碼、代碼、代碼、代碼、代碼、代碼、代碼、代碼、代碼、代碼、代碼、

5、代碼)修飾對象關(guān)系鏈。裝飾鏈不太容易過長,初始化需要很長時間,在消息鏈上傳遞信息的時間太長。像貨物包裝一樣,層層包裝著。,5 .“形狀模式”(Facade Pattern),“形狀模式”將一系列復雜類包裝到簡單的閉合界面中。隨著節(jié)目開發(fā)的進行,復雜性逐漸增加。實際上,由于熱衷于使用設(shè)計模式,這些模式有時會生成很多類,因此很難理解程序的控制過程。程序還具有許多復雜的子系統(tǒng),每個子系統(tǒng)都有其自己的復雜接口。形狀模式為這些子系統(tǒng)提供了簡化的界面,從而降低了這種復雜性。在某些情況下,這種簡化減少了子類的靈活性,但為有經(jīng)驗的用戶提供了所需的所有功能。這些用戶以及子類和方法都可以訪問。擔保申請要接受三個茄

6、子審查。要確認銀行是否有足夠的存款,抵押品價格是否合理,牙齒客戶的信譽是否好。牙齒三茄子評價在三個子系統(tǒng)中獨立完成,抵押申請審查調(diào)用牙齒三個子系統(tǒng)的方法,統(tǒng)一結(jié)果后,決定審查是否通過。設(shè)計汽車系統(tǒng),包括茶杯、水、茶包等。為此,必須合并各種類以完成任務(wù)。外觀模式可阻止客戶使用復雜的子系統(tǒng)組件,并為最終用戶提供相對簡單的編程接口。但是,它不會限制高級用戶在需要時使用深入復雜的類。此外,無需修改客戶代碼即可更改底層子系統(tǒng),從而減少了編譯依賴性。6 .輕量模式可以避免許多非常相似的類的開銷。在編程過程中,可能會出現(xiàn)需要生成大量精細類實例來表示數(shù)據(jù)的情況。在某些情況下,如果您知道這些實例基本上相同(除了

7、幾個茄子參數(shù)),則可以大大減少需要實例化的類數(shù)。通過將這些參數(shù)移出類實例并在方法調(diào)用中傳遞它們,共享可以顯著減少單個實例的數(shù)量。、四國君圍棋中,棋子:只需要一個棋子對象,應(yīng)用程序需要存儲棋子的名稱、狀態(tài)和位置。顯示國際象棋棋子時,您只需將棋子名稱、狀態(tài)和位置等信息傳遞給對象,然后在該對象上執(zhí)行繪圖行為。文本編輯器:優(yōu)點:通過減少處理的對象數(shù),減少內(nèi)存或其他存儲設(shè)備上剩馀對象的使用量。缺點:在牙齒模式下,必須保持大量對象的外部狀態(tài)。外部狀態(tài)中的大量數(shù)據(jù)楊怡可能會使查找和計算數(shù)據(jù)變得復雜。當很難區(qū)分外部和內(nèi)部的狀態(tài)時,渡邊杏采用輕量型模型。7 .當讀者需要將復雜對象或需要花時間創(chuàng)建的對象表示為簡單對象時,代理模式(Proxy Pattern)可以使用代理模式。如果在創(chuàng)建對象時浪費時間或浪費電腦資源,則代理允許您延遲創(chuàng)建過程,直到需要實際對象。代理對象通常具有與對象表示的對象相同的方法,當對象進入時,調(diào)用方法將從代理傳遞到實際對象。例如:程序必須導入并顯示大圖像。開始運行節(jié)目時,要正確布局屏幕

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論