整理一下常見的 Design Pattern (從 Code Complete 2/e 上抄下來的)
Abstract Factory:以同一介面來建立一整族相關或相依的物件。
Adapter:轉換 class 的介面。
Bridge:將介面與實作分開。
Composite:建立與自已俱有相同介面的物件,可遞迴呼叫其內含的子元件的介面,而外界只要對上層的物件操件。
Decorator:對物件動態地附加責任,而不必為每一種可能的責任配置建立子類別。
Facade:對沒有提供一致介面的 code,提供一致的介面。
Factory Method:提供一介面用來建立物件,各物件的建立由抽象類別去實作。
Iterator:依序對集合中的物件提供存取權。
Observer:讓某物件監視著其 data member,在資料有變動時通知相關物件,達成資料同步。
Singleton:讓某一物件在全域的環境裡可以安全地被存取。
Strategy:定義一組演算法,讓他們可以動態地抽換。
Template Method:定義演算法的結構,由子類別實作演算法內容。
沒有留言:
張貼留言