




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、24種設(shè)計模式復習總結(jié)創(chuàng)建型:Factory Pattern(工廠模式):1.創(chuàng)建對象的接口,封裝對象的創(chuàng)建;2.使具體化類的工作延遲到子類中。(維護一類對象)AbstractFactory Pattern(抽象工廠模型):該模式將一組對象的創(chuàng)建封裝到一個用于創(chuàng)建 對象的類中。(解決的問題:要創(chuàng)建一組或者相互依賴的對象)。Builder Pattern(創(chuàng)建者模式、生成器模式):將一個復雜的對象的構(gòu)建與它的表示分離,使 得同樣的構(gòu)建構(gòu)成可以創(chuàng)建不同的表示。如建筑師畫圖紙,而工人建造房屋。Singleton Pattern(單例模式):該模式在面向純粹的面向?qū)ο蟮姆妒街杏糜趧?chuàng)建唯一的實 例,值得
2、注意的是Singleton不能被實例化,因此將其構(gòu)造函數(shù)聲明為protected或private 類型。Singleton Pattern經(jīng)常與Factory Pattern結(jié)合使用,因為Factory對象只能有一個。 .口*:泠:據(jù):楠護苦:護做輜k:*整虹宅積0:.:垣由I崩1SingeletonPa ttcrSmgleton_instance通道一個占也世的成萸寰來記兼這個唯一的對墨賣例、+InstanceO結(jié)構(gòu)型:Composite模式(組合模式):將對象組合成樹形結(jié)構(gòu)以表示部分-整體”的層次結(jié)構(gòu)。Composite使得用戶對單個對象和組合對象的使用具有一致性。Adapter Patt
3、ern(適配器模式):適配就是由“源”到“目標”的適配,而當中鏈接兩者的關(guān)系就 是適配器。它負責把“源”過度到“目標”。將一個類的接口轉(zhuǎn)換成客戶希望的另外一個接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些類可以一起工作。適配器模式分為兩種:面向類的設(shè)計模式;面向?qū)ο蟮脑O(shè)計模式。 面向類的適配器:該模式使用繼承和接口實現(xiàn)的方式復用需要適配器的類。面向?qū)ο蟮倪m配器:該模式使用組合的方式實現(xiàn)需要復用的類。Facade模式(外觀模式):要求一個子系統(tǒng)的外部與其內(nèi)部的通信必須通過一個統(tǒng)一的Facade對象進行。Facade模式提供一個高層次的接口,使得子系統(tǒng)更易于使用。Bridge
4、Pattern(橋接模式):將抽象部分與實現(xiàn)部分分開實現(xiàn),使他們都可以獨立地變化, 并使用組合的方式將多維度的抽象方法聯(lián)系在一起。比如咖啡分小杯、中杯、大杯以及加奶 和不加奶,則抽象部分為:小杯、中杯、大杯,行為為:加奶和不加奶。行為型:Iterator模式(迭代模式):提供一種方法訪問一個容器(container)對象中各個元素,而又不需節(jié)。具體應用容器類(Vector、Set等)。Visitor模式:在不改變原有類結(jié)構(gòu)的基礎(chǔ)上不斷添加新的功能。缺點:破壞了封裝性;Concretement擴展困難:每添加一個Element的子類,就要修改Visitor的接口,使得可以提供給這個新增加的子類的
5、訪問機制。Command模式(命令模式):命令模式是對命令的封裝。命令模式把發(fā)出命令的責任和執(zhí)行命令的責任分割開,委派給不同的對象。Chain of Responsibility模式(職責鏈模式):Chain of Responsibility(CoR)是用一系 列類(classes)試圖處理一個請求request,這些類之間是一個松散的耦合唯一共同點是在他 們之間傳遞request.也就是說,來了一個請求,A類先處理,如果沒有處理,就傳遞到B 類處理,如果沒有處理,就傳遞到C類處理,就這樣象一個鏈條(chain) 一樣傳遞下去。+XHMediator模式(中介者模式):用一個中介對象來封裝一
6、系列關(guān)于對象交互行為。如MVC中的 Controller。Strategy模式(策略模式):解決與Template模式相同(類似)的問題。Strategy模式將 邏輯(算法)封裝到一個類中,通過組合的方式將具體算法的實現(xiàn)在組合對象中實現(xiàn),通過 委托的方式將抽象接口的實現(xiàn)委托給組合對象實現(xiàn)。witertSlrasgv 知i | ji瑚cbnCstg-icr Ti 句 hIe葉AlgrilhnlnteffeeQtDncreteSkrateyBWguimlntBeoeQ態(tài)下又使一個狀態(tài)轉(zhuǎn)移到另一個不同的狀態(tài)。State模式(狀態(tài)模式):人或事物有不同的狀態(tài),每種狀態(tài)又有其特定的表現(xiàn),在這些狀其他:O
7、bserver模式(觀察者模式):Observer模式定義對象間的一對多的依賴關(guān)系當一個對象的狀態(tài)發(fā)生改變時,所有依賴于它的對象都得到通知并被自動更新。(如視圖-文檔)Interpreter模式(解釋器模式):給定一個語言,定義它的文法的一種表示,并定義一個 解釋器,這個解釋器使用該表示來解釋語言中的句子。解釋器模式需要解決的是,如果一種特定類型的問題發(fā)生的頻率足夠高,那么可能就值得將 該問題的各個實例表述為一個簡單語言中的句子。這樣就可以構(gòu)建一個解釋器,該解釋器通 過解釋這些句子來解決該問題。實例應用:正則表達式。堿海過程提供一些她加信豆Memento模式(備忘模式):在不破壞封裝性的情況下
8、,捕獲并保存一個類的內(nèi)部狀態(tài), 可以利用該保存的狀態(tài)實施恢復操作。OriginatorMemento-state-state-KreateMementoO: Memento+RestoreMemento。HGetStatefl-FetStateO+SetState)Prototype Pattern(原型模式):提供一個通過已存在對象進行新對象創(chuàng)建的接口(clone)。(淺拷貝和深拷貝)Decorator模式(裝飾模式):動態(tài)地給一個對象添加一些額外的職責。Flyweight模式(享元模式):使用共享技術(shù)實現(xiàn)元素的共享。Flyw-khl:土tri+y 1仆已時心I goHv-.U n stw reC wtr 田 F5 h t+CpEfsbcr znyt 5tr 4-stying GeUnlrrttS-afeC 方 E*Sh ifcsEnq ntrrsKjt:Proxy模式(代理模式):不通過要操作對象本身去操作這個對象,而是通過一個能控制 這個對象的對象(代理)去
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國茶飲料清亮劑數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國花扳手數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國脫鹽設(shè)備數(shù)據(jù)監(jiān)測研究報告
- 2025年度離婚協(xié)議及子女監(jiān)護權(quán)變更協(xié)議
- 二零二五年度互聯(lián)網(wǎng)合同審查與網(wǎng)絡安全防護協(xié)議
- 二零二五年度知識產(chǎn)權(quán)許可以物抵債協(xié)議法院執(zhí)行
- 2025年度虛擬現(xiàn)實內(nèi)容制作個人勞務用工合同
- 2025年度民事糾紛和解協(xié)議書與知識產(chǎn)權(quán)侵權(quán)賠償及和解金支付協(xié)議
- 農(nóng)村宅基地使用權(quán)贈與協(xié)議書(2025年度)范本及法律依據(jù)
- 福建省事業(yè)單位2025年度勞動合同簽訂與執(zhí)行指導合同
- 滑膜病變超聲診斷課件整理
- 兒童感覺統(tǒng)合講座課件
- 中小學智慧校園建設(shè)標準(試行)
- 采購員崗位月度KPI績效考核表
- 混凝土質(zhì)量通病及防治方法
- 王洪圖黃帝內(nèi)經(jīng)80課時講稿
- 四川輕化工大學
- 關(guān)于領(lǐng)導干部報告?zhèn)€人有關(guān)事項的規(guī)定全文
- 個人借條電子版模板
- 六西格瑪質(zhì)量管理在口腔科器械管理中的作用
- 高中心理健康教育-認識自我悅納自我教學課件設(shè)計
評論
0/150
提交評論