有界上下文、子域和通用语言

2024-04-22

a) 对于包含两个或多个子域的 BC,存在概念重叠的可能性,甚至更糟糕的是,相同的概念(由其中几个子域使用)可能会被每个子域以不同的方式解释/理解。

无论如何,如果 BC 确实包含许多子域,它是否应该提供几种通用语言,每个子域一种,或者所有子域都应该共享相同的通用语言吗?

b) 我假设当一个子域跨越多个 BC 时,每个 BC 都应该定义自己的通用语言?

thanks


a) 虽然每个域和子域可能有自己的语言,但 UL 专门针对 BC。 BC 尽可能根据已经建立的领域语言对领域和工具进行建模。它之所以被称为“无处不在”,是因为它被工程师和领域专家普遍使用,不幸的是,对于领域语言本身来说,通常不能这么说。

B) 每个 BC 应该有自己的 UL。

当 BC 对多个具有重叠概念的(子)域进行建模时,考虑拆分该 BC 是明智之举。共享内核可用于消除两个(子)域中概念上相同的重叠。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有界上下文、子域和通用语言 的相关文章

  • ASP.NET MVC Web 应用程序中视图逻辑和域逻辑之间的混淆

    我对域 应用程序逻辑和用户界面逻辑感到困惑 为了说明我想要确定的内容 我将在下面描述一个虚构的程序以供说明 1 想象一个带有一组 3 个级联下拉菜单的小型应用程序 当您选择一个下拉列表时 它会触发 jQuery Ajax GET 最终到达
  • CQRS、DDD同步报告数据库

    我们正在尝试 CQRS 和 DDD 以及事件溯源 假设我有一位客户更新了电子邮件地址 这会触发 CustomerUpdatesEmailAddress 事件 这会进入我的操作 写入数据库 并更新表 我们的系统设计为有一个运行的 ETL 流程
  • DDD 和客户端验证

    假设您有一个使用领域模型模式 DDD 和许多其他设计模式的应用程序 假设我们有多种解决方案 如下所示 解决方案 模型 解决方案 存储库 解决方案 服务 解决方案 演示 解决方案 UI Web 用户体验层将是 Solution UI Web
  • 使用领域驱动设计的node.js

    我正在将应用程序从 C 迁移到 Node js 我一边学习一边学习node js 所以我是一个node js 新手 我正在阅读 领域驱动设计的模式 原则和实践 一书 发现我当前的项目可以从中受益的很多重要信息 例如 书中有一个示例电子商务应
  • 领域驱动设计和 IoC/依赖注入

    我现在正在尝试应用我学到的有关 DDD 的知识 但我对域模型中的依赖关系流有点困惑 我的问题是 实体是否应该了解域中的工厂 存储库 服务 存储库应该了解域中的服务吗 另一件困扰我的事情是当我想向集合添加实体时如何处理集合 假设我正在开发一个
  • 为什么域模型不应该用作 REST API 中的资源?

    我遇到过这样一种说法 按照 DDD 设计的领域模型不应该用作 REST API 中的资源 source https www thoughtworks com insights blog rest api design resource mo
  • DDD:通过身份引用聚合根内的实体

    我一直在寻找正确的参考方式entities位于一个聚合根 当我们只得到他们的身份来自 URL 参数 我问了一个上一个问题 https stackoverflow com questions 7196820 update an entity
  • 有界上下文共享相同的聚合

    DDD 公开了有界上下文 领域模型 聚合 但我经常错过业务规则的关键点 我想知道业务规则如何集成到这种方法中 这是一个例子 假设您在一家信贷公司中有 2 个有界上下文 一项用于追偿债务 另一项用于提前退款 这些背景嵌入了真正的业务特性 从概
  • 如何在领域层使用工作单元

    我正在尝试在 我的服务 类中使用工作单元模式 我有我的 CompanyService 课程 public class CompanyService ICompanyService private readonly ICompanyRepos
  • 是否有在基于 DDD 的分层架构中的模型层和数据访问层之间使用 LINQ 的建议模式

    我一直在读蒂姆 麦卡锡的书关于 NET 中的 DDD 的精彩书籍 http www amazon co uk NET Domain Driven Design Solution Programmer dp 0470147563 但在他的示例
  • CQRS 对于我的域是否正确?

    我正在对一个档案进行建模 它是视频点播系统的一部分 将存档想象成 Windows 资源管理器 其中多个用户可以创建文件夹 上传视频 重组文件夹等 有业务规则 权限 确定是否允许用户执行任务 即重命名文件夹 移动文件夹 查看文件夹等 我已将每
  • DDD 领域模型复杂验证

    我正在努力使用域驱动设计原则重写我的 ASP NET MVC 应用程序 我正在尝试验证我的用户实体 到目前为止 我能够验证基本规则 例如用户名和密码是非空 空白字符串 然而规则之一是 我需要确保用户名是唯一的 但是 我需要访问数据库才能执行
  • 有界上下文、子域和通用语言

    a 对于包含两个或多个子域的 BC 存在概念重叠的可能性 甚至更糟糕的是 相同的概念 由其中几个子域使用 可能会被每个子域以不同的方式解释 理解 无论如何 如果 BC 确实包含许多子域 它是否应该提供几种通用语言 每个子域一种 或者所有子域
  • 具有持久性无知对象的持久性和领域事件

    我一直在研究领域驱动设计领域事件 http www udidahan com 2009 06 14 domain events salvation 我真的很喜欢这些事件提供的关注点分离 我遇到了保留域对象和引发域事件的顺序问题 我想在域对象
  • 身份验证和用户任务

    我正在考虑开发一个具有明确定义域的系统 主要基于网络 域的一部分包括像这样的实体Diary Booking Customer etc 不过我创建了另一个名为User其目的仅用于身份验证和授权 污染Customer具有特定于身份验证的数据的实
  • 领域驱动设计 (Linq to SQL) - 如何删除聚合的某些部分?

    我似乎对整个 DDD LinqToSql 业务感到有点困惑 我正在使用 POCOS 和 linq to sql 构建一个系统 并且我有聚合根的存储库 因此 例如 如果您有 Order gt OrderLine 类 那么您就有了 Order
  • 在下面的模型中,地址不应该是值对象吗?

    From 值对象如何存储在数据库中 https stackoverflow com questions 679005 how are value objects stored in the database 假设公司和个人都有相同的邮件地址
  • 领域驱动设计示例(特别是 .NET 重点)

    好的 我已经订购了 但是当我等待它到达时 我正在考虑开始在我当前的项目中应用这些技术 我现在确实很好地掌握了这些概念 但是当我尝试应用它们时 我陷入了执行过程中 最终在各个项目中漏掉了我的职责 因此 我正在寻找可以引导我走向正确方向的资源
  • DDD 哪个是根聚合根?

    许多诸如订单和订单行之类的示例都是有意义的 例如 Order is an AR其中包含OrderLines Customer is an AR其中包含Orders 问题是 什么是AR其中包含Customer 我想它可能是 商店 之类的东西
  • 服务层设计。将事物放入服务层的原因

    我有一些与设计相关的问题 should service layer interfaces居住在一个domain layer 例如user service 将代码部分移动到单独层的主要原因是什么 should service layer居住在

随机推荐