Command Pattern
要點
透過一個Command的界面, 將發出請求的物件與執行請求的物件鬆綁, 通常用在面對的對象可能有很多不同的物件
如果硬寫, 會需要一連串的if else. 透過Command的界面轉介, 發出請求的物件只要直接呼叫execute, 封裝的Command物件
會自己去處理接收者的執行動作
如果硬寫, 會需要一連串的if else. 透過Command的界面轉介, 發出請求的物件只要直接呼叫execute, 封裝的Command物件
會自己去處理接收者的執行動作
應用
- Undo - 將執行過的Command紀錄下來放到Queue裡面, 要復原的話, 直接呼叫Command的undo()
- Queue - 拿出物件後直接呼叫execute, 不必管Queue裡面放的是什麼物件
- Log Restore - 將執行過的command封裝紀錄下來, 如果遇到Crash, 直接load Command的execute即可回覆原來的操作


0 意見:
張貼留言