設計模式:結構小總結

本小結本身和書上沒有啥大差異。只是自己理解認同的精簡,由多到小的表現。

adapte適配器 & bridge橋

兩者相同點在於提供一致穩定抽象接口表示,提供了靈活性。

主要是生命週期階段不同:

adapte適配器是對已有的進行連接。是實現後。

bridge橋是設計中,design stage實現與抽象接口分離,適應演化。

composite組合 & Decorator裝飾

兩者從結構上看挺像的,有點遞歸的意思。但是本質上是不用創建新類來實現新功能的對象。說明類機制本身存在不足。

兩者主要是目的不同,Decorator裝飾主要目的是爲一個對象動態添加新功能,特性。

composite組合是樹狀結構,目的在於表示,多重對象可以當成一個對象處理。適合嵌套的概念。比如GUI框。

proxy代理

主要是一種靜態關係的表示。很抽象,反過來很強大。

具體可以是location位置關係。比如中間人。也可以是接口關係,從這個角度看adapte適配器 & bridge橋是用了proxy代理設計模式。

總結一下:

就會發現,結構模式少得可憐。

實現新功能的對象只有2種結構模式。

而結構關係只有一種:代理。在實現上只有2種選擇,而這兩種只是在生命週期階段不同。

它們的存在說明類的設計方法存在不完備,非要用類解決問題,帶來了巨大的開銷。就像在實數域解決一些數學問題,非常費勁,而在複數域就很優雅。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章