一、什麼是設計模式?
答:一句話解釋,設計模式就是讓程序實現“高内聚低耦合”的軟件開發解決方案。
設計模式(designpattern):
它是解決軟件開發某些特定問題而提出的一些解決方案也可以理解成解決問題的一些思路。
通過設計模式可以幫助我們增強代碼的可重用性、可擴充性、可維護性、靈活性好。
我們使用設計模式最終的目的是實現代碼的高内聚和低耦合。
…
二、設計模式的三大分類及其關鍵點
我的3類23種設計模式,記憶順口溜“5創7結11行”。
1、創建型模式(5個)
對象實例化的模式,創建型模式用于解耦對象的實例化過程。
(1)單例模式:某個類智能有一個實例,提供一個全局的訪問點。
(2)工廠模式:一個工廠類根據傳入的參量決定創建出哪一種産品類的實例。
(3)抽象工廠模式:創建相關或依賴對象的家族,而無需明确指定具體類。
(4)建造者模式:封裝一個複雜對象的創建過程,并可以按步驟構造。
(5)原型模式:通過複制現有的實例來創建新的實例。
2、結構型模式(7個)
把類或對象結合在一起形成一個更大的結構。
(1)裝飾器模式:動态的給對象添加新的功能。
(2)代理模式:為其它對象提供一個代理以便控制這個對象的訪問。
(3)橋接模式:将抽象部分和它的實現部分分離,使它們都可以獨立的變化。
(4)适配器模式:将一個類的方法接口轉換成客戶希望的另一個接口。
(5)組合模式:将對象組合成樹形結構以表示“部分-整體”的層次結構。
(6)外觀模式:對外提供一個統一的方法,來訪問子系統中的一群接口。
(7)享元模式:通過共享技術來有效的支持大量細粒度的對象。
3、行為型模式(11個)
類和對象如何交互,及劃分責任和算法。
(1)策略模式:定義一系列算法,把他們封裝起來,并且使它們可以相互替換。
(2)模闆模式:定義一個算法結構,而将一些步驟延遲到子類實現。
(3)命令模式:将命令請求封裝為一個對象,使得可以用不同的請求來進行參數化。
(4)叠代器模式:一種遍曆訪問聚合對象中各個元素的方法,不暴露該對象的内部結構。
(5)觀察者模式:對象間的一對多的依賴關系。
(6)仲裁者模式:用一個中介對象來封裝一系列的對象交互。
(7)備忘錄模式:在不破壞封裝的前提下,保持對象的内部狀态。
請勿開啟浏覽器閱讀模式,否則将導緻章節内容缺失及無法閱讀下一章。
相鄰推薦:主宰見聞錄 萬器 全家都在拖後腿,大帥追妻太難了 修仙:我的分身是洪荒巨獸 我的監護人是機器人 穿越諸天:從拜師九叔開始 鬥羅:不想成為主角呀 大唐皇子:我有農場系統 重生?我真是好男人啊! 這真是戀愛攻略? 某魔圓的真理之名 大明中興全憑殺殺殺搶搶搶 我被她們戀愛模拟了? 病嬌女總裁,開局非要貼貼才能好 讓你去修仙,不是去修仙子! 惹我?開局就讓你跪下求治病 赤紅,寶可夢最強精靈訓練家 末世多子多福,從美豔老闆娘開始 火槍靈能與錦衣衛 豬肉西施她,幹活比殺豬還絲滑!