《深刻淺出設計模式》簡記

1      工廠模式(Factory)

1.1        簡單工廠模式

 

1.2        工廠方法模式

 

1.3        抽象工廠模式

 

2      單例模式(Singleton)

 

3      建造模式(Build)

 

4      原型模式(Proto)

 

 

5      適配器模式(Adapter)

將一個類的接口轉換成客戶但願的另一個接口。Adapter模式使得本來因爲接口不兼容而不能一塊兒工做的那些類能夠一塊兒工做。算法

 

6      橋樑模式(Bright)

將抽象部分與它的實現部分分離,使它們均可以獨立地變化app

 

 

7      組合模式(Composite)

將對象以樹形結構組織起來,以達成「部分—總體」的層次結構,使得客戶端對單個對象和組合對象的使用具備一致性。ui

 

 

 

8      裝飾模式(Wrapper/Decorator)

裝飾模式(Decorator)也叫包裝器模式(Wrapper)。代理

 

9      門面模式(Facade)

門面模式(facade)又稱外觀模式。日誌

 

10   享元模式(Flyweight)

事物之間都是不一樣的,可是又存在必定的共性,所以咱們應該儘可能將事務的共性共享,而又保留它的個性,爲了作到這一點,享元模式中區分了內蘊狀態和外蘊狀態。使用條件:系統中有大量的對象,它們使系統的效率下降;這些對象的狀態能夠分離出所須要的內外兩部分。server

10.1    單純享元模式

 

10.2    複合享元模式

 

11   代理模式(Proxy)

 

12   責任鏈模式

使多個對象都有機會處理請求,從而避免請求的發送者和接收者之間的耦合關係,將這些對象連成一條鏈,並沿着這條鏈傳遞該請求,知道有一個對象處理它爲止。對象

13   命令模式(Invoker)

將一個請求封裝爲一個對象,從而使你可用不一樣的請求對客戶進行參數化;對i去年光球排隊或記錄請求日誌,以及支持可撤銷的操做。blog

 

14   解釋器模式(Expression)

若是一種特定類型的問題發生的頻率足夠高,那麼可能就值得將該問題的各個實例表述爲一個簡單語言中的句子。這樣就能夠構建一個解釋器,該解釋器經過解釋這些句子來解決該問題。並且當文法簡單、效率不是關鍵問題的時候效果最好。接口

 

15   迭代器模式(Iterator/Cursor)

 

16   調停者模式(Mediator)

用一個調停對象來封裝一系列的對象交互。調停者使各對象不須要顯式的相互引用,從而使其耦合鬆散,並且能夠獨立的改變它們之間的交互。事務

 

 

 

 

 

17   備忘錄模式(Memento/Token)

在不破壞封裝性的前提下,捕獲一個對象的內部狀態,並在該對象以外保存這個狀態。這樣之後就可將該對象恢復到原先保存的狀態。

 

18   觀察者模式(Observer)

定義對象間的一種一對多的依賴關係,當一個對象的狀態發生改變時,全部依賴於它的對象都獲得通知並被自動更新。

 

 

 

19   策略模式(Strategy)

定義一系列的算法,把這些算法一個個封裝成擁有共同接口的單獨的類,而且使它們之間能夠互換。策略模式使這些算法在客戶端調用它們的時候可以互不影響的變化。

 

20   狀態模式(State)

容許一個對象在其內部狀態改變時改變它的行爲。

 

21   模板模式(Template)

 

22   訪問者模式(Visitor)

表示一個做用於某對象結構的各元素的操做,它使你能夠在不改變各元素的類的前提下定義做用於這些元素的新操做。

 

相關文章
相關標籤/搜索