备忘录模式用于在不破坏对象封装性的情况下,捕获一个对象的内部状态,并将其保存在外部以便后续恢复。
游戏中的存档功能,一游戏角色有生命力、攻击力、防御力等数据,通过读档恢复数值
优点:
- 提供了一种可以恢复状态的机制。当用户需要时能够比较方便地将数据恢复到某个历史的状态。
- 实现了内部状态的封装。除了创建它的发起人之外,其他对象都不能够访问这些状态信息。
- 简化了发起人类。发起人不需要管理和保存其内部状态的各个备份,所有状态信息都保存在备忘录中,并由管理者进行管理,这符合单一职责原则。
缺点:
- 资源消耗大。如果要保存的内部状态信息过多或者特别频繁,将会占用比较大的内存资源。