GoF模式的分類 ui
1.根據目的準則分類 server
就是說,指定的模式用來完成什麼樣的工做。可分爲三種: 對象
(1) Creational (建立型):與對象建立有關。 繼承
(2) Structural (結構型):處理類或對象的組合。 it
(3) Behavioral (行爲型):描述類或對象如何交互及如何分配職責。 io
2.根據範圍準則分類 編譯
即指定的模式用於類仍是用於對象,分爲兩種: table
(1) 類模式:用於處理類和子類之間的關係,這些關係經過繼承創建,是靜態的,在編譯時就已經肯定下來了。由於從某種意義上說,幾乎全部模式都是使用繼承機制,所以此處的「類模式」是指集中處理類間關係的模式,只有不多部分模式屬於此類。 class
(2) 對象模式:用於處理對象間的關係,這些關係具備動態性,在運行期間是能夠變化的。 object
範圍\目的 | Creational (建立型) | Structural (結構型) | Behavioural (行爲型) |
類 | Simple Factory | Adapter (class) | Interpreter |
Factory Method | Template method | ||
對象 | Abstract Factory | Adapter (object) | Chain of Responsibility |
Builder | Bridge | Command | |
Prototype | Composite | Iterator | |
Singleton | Decorator | Mediator | |
Facade | Memento | ||
Flyweight | Observer | ||
Proxy | State | ||
Strategy | |||
Visitor |