行为型模式——备忘录模式(Memento)

开头

    我一直坚信生活中不存在后悔药,但是今天在软件开发中竟然存在后悔药这一概念,例如打游戏,不能说游戏主人公死了以后就永远能在玩这个游戏了吧,那游戏体验如果是这个样子,我觉得真的没有必要再玩了。今天就带大家介绍一下设计模式中的后悔药——备忘录模式。


内容

    我们先从词义上分析一下备忘录一词,好比账本,通讯录、数据库、他们好比记忆工具一样,记录着不同时期每一笔花销状态,每一个人的电话信息状态,每一个不同时间段数据的状态。可见我们可以随意的翻看不同时间段的各种数据信息的状态。这就是备忘录模式。

     备忘录模式大致分为三类角色,分别为:发起人(Originator)、备忘录(Memento)、管理者(Caretaker)

例子:下面我们以游戏中的某一游戏角色的状态进行展示。

发起人(Originator):创建一个备忘录保存人物当前状态,恢复以前状态。


备忘录(Memento):存储人物角色状态。

管理者(Caretaker):保存备忘录。


客户端


扫描二维码关注公众号,回复: 1371053 查看本文章

显示结果



总结

备忘录模式(Memento Pattern):在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。

优点:备忘录模式实现了信息的封装,可以恢复到以前的状态。

缺点:如果保存的状态太多,占用大量内存空间,浪费系统资源。

适用环境:(1)系统需要执行回滚以及撤销操作。

                 (2)可以保存一个对象某个时刻的状态,且这种状态不会被外界破坏。


  关于今天的总结就先到这里,如果本篇博客对于初学者的您有一定的帮助,记得给小编点赞哦。


猜你喜欢

转载自blog.csdn.net/fjxcsdn/article/details/80514399