天天看點

設計模式應用場景

decorator
視窗修飾(四人幫,設計模式);
星巴克咖啡記賬(head first設計模式);
電子票據修飾(設計模式精解);
IPMI協定用戶端實作(本人工作),
JDK中的流的封裝;
個人感覺咖啡記賬采用decorator模式,不如采用表格等方法好,算是一個不太恰當的例子。像IPMI協定實作更多是由底層的資料結構驅動,天然地采用decorator模式
iterator:
STL中各種Iterator object;
python中generator;
java中的Iteratble interface
Adapter:
各種跨平台的中間件,工具包,庫等,比如ACE(通訊,cobra,中間件),QT(UI),wxWidgets(UI),python,java等跨平台語言的底層實作OS功能的子產品。
在java的跨平台UI庫中,swing
Facade:
該模式并不限于面向對象設計,比如zip壓縮庫(C language),雖然是用C實作的壓縮庫,但裡面提供了2個層次的接口,一個比較低層,接口比較複雜,但是提供了更強大的功能;另一個接口數量少,使用友善,比較高層,友善一般使用者使用。

繼續閱讀