在软件系统中,备忘录模式为我们提供了一种“后悔药”的机制。它通过存储系统各个历史状态的快照,使得我们可以在任意时刻将系统回滚到某一个历史状态。
一、备忘录模式的应用场景我们机会天天都在使用备忘录模式,比如使用Git、SVN提供一种代码版本撤回的功能。还有游戏的存档功能,通过将游戏当前进度存储到本地文件系统或数据库中,使得下次继续游戏时,玩家可以从之前的位置继续进行。


备忘录模式适用于以下两个场景:
需要保存历史快照的场景;希望在对象之外保存状态,且除了自己其它类对象无法访问状态保存具体内容。备忘录模式主要包含三种角色:
发起人角色(Orgainator):负责创建一个备忘录,记录自身需要保存的状态。具备状态回滚功能;备忘录角色(Memento):用于存储发起人的内部状态,且可以防止发起人以外的对象进行访问;备忘录管理员(Caretaker):负责存储,提供管理备忘录,无法对备忘录内容进行操作和访问。1.1 利用压栈管理落地备忘录模式我们在网页上写文章或者博客都使用过富文本编辑器,它会附带草稿箱、撤销等这样的功能。

下面使用代码来实现这样的功能。假设我们需要发布一篇文章,这篇文章的编辑过程需要花很长的时间,编辑的过程中会不停的撤销,保存草稿、修改。首先创建发起人角色编辑器 Editor 类:
主要逻辑就相当于是给Message留一个备份,以备恢复之用。
三、备忘录模式的优缺点优点:
简化发起人职责,隔离状态存储与获取,实现了信息的封装,客户端无需关心状态的保存细节;提供状态回滚功能。缺点: 消耗资源:如果需要保存的状态过多时,每一次保存都会消耗很多内存。
以上便是小编为大家带来的如何存档游戏放在抖音里,希望对大家有所帮助,更多内容请继续关注鼎品软件。
道具城掌上道聚城
其他游戏83.35M
下载
奥特曼全明星编年史游戏
动作格斗18.11MB
下载
纪念碑谷苹果免费版
冒险解谜700.1M
下载
反恐精英苹果手机版
飞行射击528M
下载
我的世界快吧盒子
其他游戏28.4M
下载
疯狂动物园破解版内购
模拟经营202.0M
下载
红警共和国之辉手机版
模拟经营177.98M
下载
神庙逃亡2破解版单机游戏
动作格斗93.26M
下载
在奔跑无限金币无限钻石与无限生命版
模拟经营84.83M
下载
我的健身教练2手游
体育竞技78.8MB
下载