首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >域驱动设计:子域是类吗?

域驱动设计:子域是类吗?
EN

Stack Overflow用户
提问于 2019-09-17 15:51:56
回答 2查看 426关注 0票数 3

让我们考虑一下,我们使用OOP。

是子域一个类吗?而有界上下文是一组类,它们一起用于唯一的目的(理想情况下)?子域上可以包含一组类吗?如果是,那么有界上下文之间的区别是什么?

例如,我们有一个域名:在线商店。

我们将在线商店划分为两个子域:客户支持和购物。

我们看到这样的分歧仍然很大,所以我们分裂:

  1. 客户支持在客户,支持者,提克子域。现在,这类子域变成了类,并且划分的子域成为客户、购物车、支付子域中的有界context.
  2. Shopping。现在,这样的子域成为类,被分割的子域成为有界上下文。

也许这不是子域的最好例子,但重点是让您了解我的问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-03 06:53:28

我试着解释,你把事情搞混了。

  • 子域它属于问题空间。在这里,您没有类或任何关于编程语言的内容。你有概念、关系等,当你必须解决一个问题时,你就有了这个问题的范围。如果这个问题很广,你就把它分成更小的子问题,这些子问题也是问题。因此,子域是subproblem.
  • Bounded上下文(BC)的域。它属于解空间。在这里,您确实有类或编程语言的其他构件。如果您有问题,BC就是实现和解决该问题的应用程序。您可以对问题的域进行建模,以便有一个域模型。理想情况下,BCs将1:1与子域相关联。

无论BC只是一个类还是很多类,它将取决于将域划分为子域时的粒度,以及如何对子域建模。关于BC应该有多少类,没有任何规则。

希望我的解释有帮助。

票数 3
EN

Stack Overflow用户

发布于 2019-09-17 18:52:35

最近,我阅读了Vernon的“实现域驱动的设计”,我强烈建议您阅读这本伟大的书。根据这本书,我将用几个词来定义这些概念:

领域-组织做什么;一种专门的知识,结合不同的行动。域是有界上下文是它们的解决方案的问题。

子域-域的一部分。

有界上下文-使用特定的普适语言清除边界。最好是每个子域都有自己的有界上下文。应该是大的,因为它需要表达它的整个无处不在的语言。

但当然,关于这件事还有很多话要说。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57977912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档