備忘錄模式

標籤(空格分隔): 設計模式設計模式


簡介
  行爲型模式。保存一個對象的狀態,以便在某個時刻恢復對象。
  打boss前存檔,下象棋悔棋,編輯文檔時使用Ctrl+z撤銷等場景都是備忘錄模式的應用。
  優勢:能夠回滾。缺點:資源消耗嚴重。設計

具體實現
  寫一個存儲對象狀態的類(相似於備忘),而後在另外一個類中維護一個備忘類的List,這個類相似於備忘錄。當須要保存狀態時,把一個備忘對象add進備忘錄類裏便可。
對象

備忘錄模式的結構
  發起人:記錄當前時刻的內部狀態,負責定義哪些屬於備份範圍的狀態,負責建立和恢復備忘錄數據。
  備忘錄:負責存儲發起人對象的內部狀態,在須要的時候提供發起人須要的內部狀態。
  管理角色:對備忘錄進行管理,保存和提供備忘錄。blog

注意
  當須要記錄多個狀態時,使用Map容器來存儲一條備忘,而後備忘錄管理類中的List就存儲這些Map的集合便可。資源

相關文章
相關標籤/搜索