設計模式筆記 - 命令模式
分類
- 行為型
模式的目的(定義)
- 為了更好管理對目標對象的請求,我們將「請求」本身封裝成一個又一個對象(命令對象),並經由一個調用者去實行這些請求
- 比如可以在調用者裡管理一個請求隊列,確保請求的執行順序,也可以支持命令撤銷等功能
使用場景例子
- 比如現在有一個回合制遊戲,玩家有一些手牌,每打出一張手牌,場上的角色就會發出一個招式並播放一些動畫等等
- 但玩家是不會乖乖等到所有東西播完才點下一張手牌的,玩家往往是點完一大輪手牌,操作一番後再等待場上角色自己完成餘下要完成的行動
- 這時候就可以應用命令模式,把玩家每回合所點撃的操作,封裝為一個個命令對象,構成一個命令隊列,讓遊戲流程根據自己的節奏按順序執行每個命令,而不需要在意玩家的操作有多頻繁急速
類圖

參考書目
- 《Head First Design Patterns》Eric Freeman, Elisabeth Robson, Kathy Sierra, Bert Bates