設計模式分類--學習筆記

設計模式分類
 

經典的《設計模式》一書歸納出23種設計模式,本文按《易學設計模式》一書歸納分類如下:
1.創建型模式

前面講過,社會化的分工越來越細,自然在軟件設計方面也是如此,因此對象的創建和對象的使用分開也就成爲了必然趨勢。因爲對象的創建會消耗掉系統的很多資源,所以單獨對對象的創建進行研究,從而能夠高效地創建對象就是創建型模式要探討的問題。這裏有6個具體的創建型模式可供研究,它們分別是:

簡單工廠模式(Simple Factory);

工廠方法模式(Factory Method);

抽象工廠模式(Abstract Factory);

創建者模式(Builder);

原型模式(Prototype);

單例模式(Singleton)。

說明:嚴格來說,簡單工廠模式不是GoF總結出來的23種設計模式之一。

2.結構型模式

在解決了對象的創建問題之後,對象的組成以及對象之間的依賴關係就成了開發人員關注的焦點,因爲如何設計對象的結構、繼承和依賴關係會影響到後續程序的維護性、代碼的健壯性、耦合性等。對象結構的設計很容易體現出設計人員水平的高低,這裏有7個具體的結構型模式可供研究,它們分別是:

外觀模式(Facade);

適配器模式(Adapter);

代理模式(Proxy);

裝飾模式(Decorator);

橋模式(Bridge);

組合模式(Composite);

享元模式(Flyweight)。

3.行爲型模式

在對象的結構和對象的創建問題都解決了之後,就剩下對象的行爲問題了,如果對象的行爲設計的好,那麼對象的行爲就會更清晰,它們之間的協作效率就會提高,這裏有11個具體的行爲型模式可供研究,它們分別是:

模板方法模式(Template Method);

觀察者模式(Observer);

狀態模式(State);

策略模式(Strategy);

職責鏈模式(Chain of Responsibility);

命令模式(Command);

訪問者模式(Visitor);

調停者模式(Mediator);

備忘錄模式(Memento);

迭代器模式(Iterator);

解釋器模式(Interpreter)。

發佈了66 篇原創文章 · 獲贊 7 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章