DTO 模式与 Memento 模式
-
26-09-2019 - |
解决方案
这两者经常用于非常不同的事情 - 你在哪里感到困惑?DTO 涉及数据传输(运营商类别),而 memento 涉及跟踪更改并允许您回滚这些更改。除此之外,我不确定是什么让你对你的问题感到困惑。
其他提示
它们有不同的目的。DTO 是一种设计模式,用于在软件应用程序的层和/或多层之间传输对象。另一方面,备忘录是另一种设计模式,它允许对象通过外部化其状态来提供撤消功能,如果需要,可以在以后恢复该状态。类的 DTO 类和 Memento 类可能看起来相似,普通的旧 {Insert Technology Here} 对象 - PO?O 或看起来完全相同。然而,它们需要保持分离,因为它们将满足不同的需求,因此发展也不同。例如,有一天您可能需要在 DTO 类中包含一个属性,但同一属性对于对象的状态管理并不重要,因此不需要添加到 memento 类中。
另一个方面是,DTO 通常在您的班级之外进行,而您的班级对 DTO 并没有应有的了解。事实上,有一些框架可以为您处理数据映射。另一方面,对于 memento 模式,您的类需要提供一个 api,就像您在 uml 图中看到的那样,例如 CreateMemento、RestoreFromMemento 等。
不隶属于 StackOverflow