天天看點

設計模式-指令模式

指令(Command)模式的定義如下:将一個請求封裝為一個對象,使送出請求的責任和執行請求的責任分割開。 這樣兩者之間通過指令對象進行溝通,這樣友善将指令對象進行儲存、傳遞、調用、增加與管理。

降低系統的耦合度。指令模式能将調用操作的對象與實作該操作的對象解耦。

增加或删除指令非常友善。采用指令模式增加與删除指令不會影響其他類,它滿足“開閉原則”,對擴充比較靈活。

可以實作宏指令。指令模式可以與組合模式結合,将多個指令裝配成一個組合指令,即宏指令。

友善實作 Undo 和 Redo 操作。指令模式可以與後面介紹的備忘錄模式結合,實作指令的撤銷與恢複。

可能産生大量具體指令類。因為計對每一個具體操作都需要設計一個具體指令類,這将增加系統的複雜性。

繼續閱讀