美文网首页
设计模式-备忘录模式

设计模式-备忘录模式

作者: 成绩是汗 | 来源:发表于2019-01-30 17:54 被阅读9次
    1、备忘录模式概念

    第一点:行为涉及模式
    第二点:用于保存对象的当前状态,并且以后可以再次恢复到此状态(后悔药)。

    2、备忘录模式的定义

    在不破坏封闭的前提下,捕获一个对象的内部状态,并在改对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的对象。

    3、备忘录模式的使用场景

    场景一:需要保存对象在某一个时刻的状态或者部分状态
    场景二:如果用一个接口(协议)来让其他对象得到这些状态,将会暴露对象的实现细节并且破坏对象的封装性,一个对象不希望外界直接访问其内部状态,通过中间对象可以间接访问其内存状态。

    4、备忘录模式的角色划分

    角色一(Originator):负责创建一个备忘录,可以记录和恢复内部状态。
    角色二(Memento):备忘录角色,用于存储角色一的内部状态,并且可以防止角色一以外的对象访问角色二。
    角色三(Caretaker):负责存储备忘录,不能够向外暴对备忘录内容进行操作。

    5、备忘录模式的原理案例

    基本结构:
    案例:游戏存档
    首先:定义一个备忘录->任务的等级、属性、分数等
    其次:定义一个创建备忘录角色Originator
    最后:定义一个负责存储备忘录

    案例一:原始状态->命令模式(请求者、接受者、具体命令)
    第一步:实体类->银行账户对象
    第二步:保存实体->Bank
    第三步:实现命名->BankCommand

    案例二:备忘录模式优化案例
    第一步:创建备忘录
    第二步:创建备忘录->管理器

    相关文章

      网友评论

          本文标题:设计模式-备忘录模式

          本文链接:https://www.haomeiwen.com/subject/gpvcsqtx.html