Domain driven design 在考虑DDD时,只将一些数据传输到UI有意义吗?

Domain driven design 在考虑DDD时,只将一些数据传输到UI有意义吗?,domain-driven-design,Domain Driven Design,假设我有一个模型考试。将有一个包含问题和答案的问题对象集合,以及每个学生回答的内容集合 我认为应用层只给表示层创建UI所需的信息是可以的。换句话说,当学生回答问题时,应用层不会将其他学生呈现给表示层 当数据返回到应用层时,也是这样。问题无法更改,因此我们只发送学生的答案以附加到域模型 这是根据E.Evans对应用层的描述:定义软件应该做的工作,并指导表达域对象解决问题。是的,这是有意义的。不仅如此,在我看来,在大多数情况下,这应该是走向架构的方向。事实上,DDD在管理复杂性方面非常出色,同时在聚

假设我有一个模型考试。将有一个包含问题和答案的问题对象集合,以及每个学生回答的内容集合

我认为应用层只给表示层创建UI所需的信息是可以的。换句话说,当学生回答问题时,应用层不会将其他学生呈现给表示层

当数据返回到应用层时,也是这样。问题无法更改,因此我们只发送学生的答案以附加到域模型


这是根据E.Evans对应用层的描述:定义软件应该做的工作,并指导表达域对象解决问题。

是的,这是有意义的。不仅如此,在我看来,在大多数情况下,这应该是走向架构的方向。事实上,DDD在管理复杂性方面非常出色,同时在聚合和有界上下文中保持一致性——即当某些内容发生更改时发生的事情。并且在读取(显示)数据时不应该有任何更改,因此您在这方面得不到DDD的帮助。此外,如果您使用域对象为UI层提供数据,那么最终将为用户界面而不是业务域定制域,而这些是不同的上下文

事实上,有基于这些事实的整个体系结构,它们就是其中之一。CQRS有一个很好的想法,即保留两组数据存储—一组是为域模型定制的,另一组是为读取要显示在UI上的数据而明确准备的(例如)


你可能也对这篇博文感兴趣,因为它也遵循了将写(域)和读(查询)分开的思想。

是的,它确实有意义。不仅如此,在我看来,在大多数情况下,这应该是走向架构的方向。事实上,DDD在管理复杂性方面非常出色,同时在聚合和有界上下文中保持一致性——即当某些内容发生更改时发生的事情。并且在读取(显示)数据时不应该有任何更改,因此您在这方面得不到DDD的帮助。此外,如果您使用域对象为UI层提供数据,那么最终将为用户界面而不是业务域定制域,而这些是不同的上下文

事实上,有基于这些事实的整个体系结构,它们就是其中之一。CQRS有一个很好的想法,即保留两组数据存储—一组是为域模型定制的,另一组是为读取要显示在UI上的数据而明确准备的(例如)


你可能也对这篇博文感兴趣,因为它也遵循了将写(域)和读(查询)分开的思想。

这不是一个真正的答案,但这样做是有意义的。考虑到您的场景,以另一种方式进行是浪费时间的,除非您预期需求可能会发生变化(即,不断变化的问题)。这样做既实用又简单,但这些原因并不能单独使DDD变得很好…:)这不是一个真正的答案,但这样做是有意义的。考虑到您的场景,以另一种方式进行是浪费时间的,除非您预期需求可能会发生变化(即,不断变化的问题)。这样做既实用又简单,但这些原因并不能单独使DDD变得很好…:)