gpt4 book ai didi

oop - DTO 模式与 Memento 模式

转载 作者:行者123 更新时间:2023-11-30 05:09:13 24 4
gpt4 key购买 nike

DTO pattern 之间有什么区别(作者:福勒)和 Memento pattern (GoF)在动机和实现方面?可以是同一个类(class)吗?如果是,我该如何命名它们(xxxDTO 或 xxxMemento)?它们在实现上有什么主要区别吗?它们在 MVP 中的位置在哪里?架构?

谢谢。

最佳答案

它们有不同的目的。 DTO 是一种设计模式,用于在软件应用程序的层和/或多层之间传输对象。另一方面,备忘录是另一种设计模式,它允许对象通过外部化其状态来提供撤消功能,如果需要,可以在以后恢复该状态。类的 DTO 类和 Memento 类可能看起来相似,普通的旧 {Insert Technology Here} 对象 - PO?O 或看起来完全相同。然而,它们需要保持分离,因为它们将满足不同的需求,因此发展也不同。例如,有一天您可能需要在 DTO 类中包含一个属性,但同一属性对于对象的状态管理并不重要,因此不需要添加到 memento 类中。

另一个方面是,DTO 通常发生在您的类(class)之外,而您的类(class)对 DTO 毫无了解。事实上,有一些框架可以为您处理数据映射。另一方面,对于备忘录模式,您的类需要提供一个 api,就像您在 uml 图中看到的那样,例如 CreateMemento、RestoreFromMemento 等。

关于oop - DTO 模式与 Memento 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4036441/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com