备忘录模式
在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的状态。
结构
发起者角色(Originator):负责创建一个备忘录,可以记录和恢复内部状态。
备忘录角色(Memento):负责存储发起者的内部状态。
管理者角色(Caretaker):负责保存和获取备忘录,但不能对备忘录的内容进行操作和访问。
适用场景
需要在不破坏对象封装性的前提下,保存和恢复对象的状态。
需要避免直接暴露对象的内部状态。
优点
简化了发起者角色,发起者不需要管理和保存其内部状态。
提供了状态的封装,外部对象无法直接访问备忘录的内容。
缺点
如果需要保存的状态非常多,会占用大量的内存。
发起者需要主动创建备忘录并保存状态,增加了复杂性。
扩展
支持多次保存状态,可以创建多个备忘录来保存不同的状态。
可以结合命令模式使用,将状态的保存和恢复封装为命令。
一、源码特点
23种设计模式示例,仅供初学者学习使用,有需要的朋友不要错过
二、注意事项
1、开发环境为Visual Studio 2013,使用.net 4.5开发。
2、DesignMethod文件下是各种模式实例


© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...

