創建型模式 抽象工廠-不知道來者目的而抽象,由子類去具體實現,但接口統一,以參數值決定選哪一個子類 生成器(builder) 同樣的構建創建不同表示 工廠方法(fatory method)-讓實例化延遲到子類 原型prototype拷贝原型创建新的对象 單態singleton--防止類被重建或重複實例 ============ 行為型模式 職責鏈:處理多個請求並保持發送與接收的藕合關係 Command(命令):將一個請求封裝為一個list對象,參數化客戶請求 interpreter(解釋) --制定規則解釋類的各種特定行為 與composite,Flyweight,Iterator,Visitor相關
iterator(迭代)--以不同方式遍歷項目,而不暴露內部細節
mediator(中介)---為了藕合松散,減少對象連接的數目,讓對象通過中介發生交互 Memento:在内存中保留原来数据的拷贝,以便回轉操作. observer(觀察者)---一對一的對象依賴關係,一個有變另一個自動更新 state(狀態)--通過狀態的變化來影響行為. 相關的flyweight模式
Strategy 算法一个个封装成单独的类 Template method (模板方法)--自定義實例方法在子類,以後擴展再增加子類重載即可 visitor(訪問者)--確定哪些可以訪問 哪些不可以訪問 =========== 結構型模式 facade 統一使用與被使用的接口 proxy 为另一个对象的存取提供一个代理人
Flyweight 將共有的部分獨立成一個類,減少內存消耗,求同存異 Adapter 混血兒來匹配不相關的兩個類 Bridge 抽象和行为划分开来,各自独立,但能动态的结合 Decorator:装饰,油漆工,油漆工是用来刷油漆的,那么被刷油漆的对象我们称decoratee.这两种实体在Decorator模式中是必须的. Composite 使得客户端对单个对象和组合对象的使用具有一致性
Decorator定义: 动态给一个对象添加一些额外的职责

|