GoF設計模式中裝飾器、代理與介面卡的區別與聯絡 - Mario

banq發表於2020-11-27

一些設計模式具有相似的結構,但意圖不同。例:
  • 裝飾器:向物件新增新職責。
  • 代理:控制對物件的訪問。
  • 介面卡:更改物件的介面。


不同的意圖,但是這三個可以看作是物件包裝器。

這在設計模式中經常發生。類似的構造會代表非常不同的意圖和命名約定。
 
實際上,如果您考慮一下,GoF書中每個模式的第一部分就是“意圖”,並且每個模式都有一個“相關模式”部分,因為它們之間有相似之處。
 
永遠不要透過其形狀來判斷模式,結構過於高,必須檢查其看行為,這就是為什麼靜態設計圖表會失敗的原因。
 
我認為,模式的最重要部分是其意圖。這是真正幫助我們區分模式並使它們強大的功能。

補充,外觀模式:將一個或多個介面隱藏在一個通用,更清晰且合適的介面後面
 

相關文章