今天要來說佔了接下來將近一半天數的設計模式了,畢竟說到擴充性,沒有比設計模式更加廣為人知的詞彙,畢竟設計模式可說是物件導向實踐的重要範本。更何況設計模式是一個已經有著接近30年歷史的作法,這中間已經被各領域的程式使用了不知道多少次,有些甚至是程式語言本身的特性之一。既然過了這麼久都還歷久不衰,實在沒有不去理解的理由。
以GoF的設計模式來說,這些模式被設計成三大類別。
- 生成模式(Creational Pattern):創造物件的過程及方式
 
- 結構模式(Structural Pattern):實現類別或物件之間組合的簡單作法
 
- 行為模式(Behavioral Pattern):類別或物件之間互動或是責任分配的方式
 
而這23個設計模式分別對應下面的部分。
Creational Patterns
- Factory Method
 
- Builder
 
- Prototype
 
- Singleton
 
- Abstract Method
 
Structural Patterns
- Composite
 
- Decorator
 
- Adapter
 
- Proxy
 
- Bridge
 
- Facade
 
- Flyweight
 
Behavioural Patterns
- Observer
 
- Template Method
 
- Strategy
 
- Interpreter
 
- Chain of Responsibility
 
- Command
 
- Iterator
 
- Mediator
 
- Memento
 
- State
 
- Visitor
 
不過這系列的文章不會每個都說就是了,有興趣看其他這系列沒說的可以翻閱參考資料看看。
之後的文章就會開始進入每種設計模式作法的部分了,敬請期待~
參考資料
設計模式:可復用面向對象軟體的基礎(典藏版)
設計模式與遊戲開發的完美結合(暢銷回饋版)