設計模式3-6:備忘錄模式

What

備忘錄模式(Memento Pattern)保存一個對象的某個狀態,以便在適當的時候恢復對象。

在不破壞封裝性的前提下,捕獲一個對象的內部狀態,並在該對象之外保存這個狀態。

Why

所謂備忘錄模式就是在不破壞封裝的前提下,捕獲一個對象的內部狀態,並在該對象之外保存這個狀態,這樣可以在以後將對象恢復到原先保存的狀態。

  • 給用戶提供了一種可以恢復狀態的機制,可以使用戶能夠比較方便地回到某個歷史的狀態。
  • 實現了信息的封裝,使得用戶不需要關心狀態的保存細節。

實現如撤回的功能。還有實現遊戲的存檔功能也可以使用這種方法

How

通過一個備忘錄類專門存儲對象狀態。
客戶不與備忘錄類耦合,與備忘錄管理類耦合。
爲了符合迪米特原則,還要增加一個管理備忘錄的類。而爲了節約內存,可使用原型模式+備忘錄模式。

通過備忘錄類來爲對象保存或加載數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章