【问题标题】:What are some design patterns for doing version control of an object?对对象进行版本控制的设计模式有哪些?
【发布时间】:2010-10-09 15:50:52
【问题描述】:

有哪些设计模式可以在对象更改时保留其历史记录。我不需要像event sourcing 那样繁重的任务,只需要在特定事件发生时保存过去的版本(在这种情况下是按下打印表单按钮)。

【问题讨论】:

    标签: design-patterns version-control event-sourcing memento


    【解决方案1】:

    您可以查找memento pattern

    【讨论】:

      【解决方案2】:

      这听起来与跟踪撤消信息是同构的。通常的模式是命令模式的一种变体:您按照先前状态的时间顺序保留一个队列,并执行恢复到先前状态的操作。

      【讨论】:

      • 不同之处在于历史记录本身是持久化的,而使用撤消信息则不需要任何此类信息。
      【解决方案3】:

      我建议你看看 Martin Fowler 的时间模式:http://www.martinfowler.com/eaaDev/timeNarrative.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-05-07
        • 2017-03-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-07
        • 1970-01-01
        相关资源
        最近更新 更多