你好,我是徐昊。今天我们来聊聊如何有效地基于领域模型构造合理的架构。
到目前为止,我们学会了通过关联对象解决聚合 / 关联关系;利用角色对象分离不同上下文中的交互;并使用上下文对象完成实体对象到角色对象的扮演。这些模式通过结构上的优化,更好地组织了对核心数据的访问逻辑,使得我们可以在兼顾架构约束的同时,将领域概念与逻辑有效地转化为领域模型。
然而当我们把眼光从构造领域模型,扩展到利用领域模型构建整个应用或系统时,就会遇到新的问题:如何组织领域逻辑与非领域逻辑,才能避免非领域逻辑对模型的污染?
通常我们会使用分层架构(Layered Architecture)区分不同的逻辑以解决这个问题。然而由于领域层被人为赋予了最稳定的特性,破坏了分层架构间的依赖关系。所以我们需要修正分层,才能有效地围绕领域模型来构造软件架构。
那么今天这节课我们就看看分层架构的问题在哪儿,以及如何通过能力供应商(Capability Provider)模式获得一个更好的架构愿景。
领域层的“不正当关系”
分层架构是运用最为广泛的架构模式,它将不同关注点的逻辑封装到不同的层中,以便扩展维护,同时也能有效地控制变化的传播。
在使用领域驱动设计时,我们通常会将系统分成四层:
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
0/1000字
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《如何落地业务建模》,如需阅读全部文章,
请订阅文章所属专栏,新⼈⾸单¥59.9
立即订阅