备忘录模式

    科技2025-10-19  15

    文章目录

    背景定义case

    背景

    在软件构建过程中,某些对象的状态在转换过程中,由于某种需要,要求程序能够回溯到对象之前处于某个点的状态。如果使用一些公有的接口来让其他对象得到对象的状态,便会暴露对象的细节实现。 如何实现对象状态的良好保存与恢复?同时又不会因此而破坏对象本省的封装性。

    定义

    在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。 《设计模式》GoF

    case

    最典型的例子就是文档编辑过程中的“撤销”操作。

    NOTE: 备忘录模式的核心是信息隐藏,这一点仍然使用,但技术发展至今,实现备忘录的方式可以也得到类升级,不必再通过实例一个相似的类去保存,可以通过序列化等技术实现。

    Processed: 0.015, SQL: 9