设计模式(22) 备忘录模式(简单入门 行为模式)

来源:互联网 发布:楼梯扶手立柱高度算法 编辑:程序博客网 时间:2024/06/05 20:03

设计图和源代码请访问我的github:https://github.com/yangsheng20080808/DesignModel

From Now On,Let us begin Design Patterns。

备忘录模式

定义

  • 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。Without violating encapsulation, capture and externalize an object’s internal state so that the object can be restored to this state later.

通用类图:
大家具体查看《设计模式之禅》

备忘录模式的优点:

  • 备忘录模式可以把发起人内部信息对象屏蔽起来,从而可以保持封装的边界。

  • 简化了发起人类。当发起人角色的状态改变的时候,有可能这个状态无效,这时候就可以使用暂时存储起来的备忘录将状态复原

备忘录模式的缺点:

  • 如果状态需要完整地存储到备忘录对象中,那么在资源消耗上面备忘录对象比较昂贵。

    • 当发起者对象的状态改变的时候,有可能这个协议无效。如果状态改变的成功率达不到要求,可以考虑采取“假如”协议模式。

备忘录模式的使用场景:

数据库事务管理中的回滚操作

迭代器模式的例子:

大家具体查看《设计模式之禅》

阅读全文
0 0
原创粉丝点击