"撤消"功能的最佳设计模式

ten*_*our 21 design-patterns undo

可能重复:
撤消引擎的设计模式

一般来说,您如何处理在应用程序中支持"撤消"功能?我一直在研究网络应用程序和桌面应用程序,我从来没有真正对任何"撤消"系统感到满意.

jet*_*hro 26

我相信应该是Command设计模式.

下面是文章约多层撤销/重做与Command模式.

编辑:这是关于多级撤消/重做Memento模式的第二个.

所以可能两者都可以完成.


thi*_*eek 6

我投票支持Memento上的Command模式.Memento模式比撤销/重做功能的命令模式要昂贵得多.

与仅对任何兼容对象执行或撤消操作相比,捕获和恢复对象状态将是相当昂贵的事情.