PHP之設計模型分類(一)

經典的《設計模式》一書概括出23種設計模式,本文按《易學設計模式》一書概括分類以下:
1.建立型模式設計模式

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

    簡單工廠模式(Simple Factory);設計

    工廠方法模式(Factory Method);代理

    抽象工廠模式(Abstract Factory);server

    建立者模式(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)。

相關文章
相關標籤/搜索