DDD实践中如何设计上下文BC之间的映射关系?
原文中文,约3600字,阅读约需9分钟。
📝
内容提要
本文介绍了如何区分产品基础设施和技术基础设施,以及与产品基础设施相关的通用技术。文章还讨论了通用有界上下文(GBC)的概念,以及在DDD中的三种主要子域类型。此外,文章还介绍了交叉服务和GBC实用模式,以及依赖、关系和成熟度的类型。最后,文章总结了在构建基础架构时应考虑的不同实用模式。
🎯
关键要点
-
技术基础设施主要由开发人员使用,不影响用户体验,产品基础设施则直接影响用户体验。
-
平台组负责产品基础设施,技术组负责技术基础设施。
-
通用有界上下文(GBC)在DDD中是一个重要概念,包含多个有界上下文(BC)。
-
有界上下文分为核心BC、支持性BC和通用BC,分别代表不同的业务逻辑和需求。
-
交叉服务为系统中的不同聚合体提供常用功能,设计上不面向特定产品领域。
-
创建交叉微服务的时机包括需要重复能力、依赖关系复杂或需要独立部署能力时。
-
在GBC中,优先购买现成产品,只有在没有可用产品时才考虑自制。
-
依赖、关系和成熟度是定义GBC实用模式的重要因素。
-
BC的依赖类型包括相互依赖、上游下游和自由关系。
-
上下文映射描述有界上下文和团队之间的关系,帮助理解依赖和成熟度。
-
成熟度特征帮助选择适合的实用模式,分为Customer supplier、Conformist、Open-host service和反腐层。
-
构建基础架构时需考虑依赖关系和MVP思维,确保服务满足产品团队的需求。
🏷️