命令模式

命令模式將請求封裝成對象,以便使用不同的請求、隊列、或者日志來參數化其他對象。命令模式也支持可撤銷的操作。

Command Pattern類圖
  • 命令模式將發出請求的對象和執行請求的對象解耦。
  • 兩者間是通過命令對象進行溝通的。命令對象封裝了接收者的一個或者一組動作。
  • 命令對象持有接收者對象的引用。
  • 調用者通過調用命令對象的execute()方法發出請求,使得接收者的動作被調用。
  • 命令可以支持撤銷,具體做法為接收者對象實現undo()方法回撤狀態。
  • 宏命令持有一個命令集,實現調用多個命令。
  • 命令也可以用來實現日志和事務系統,通過undo()方法實現食物回滾。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容