
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
分层架构是软件开发程序员常用的软件架构技术之一,现在比较流行的分层架构有:DDD四层架构、六边形架构和洋葱架构。下面我们就一起来聊聊这些架构技术的作用。
三种分层架构的核心思想就是将领域模型放在应用的核心位置,然后通过分层建立外层依赖内层的松耦合依赖关系,从而隔离外部环境的“变”与领域模型的“不变”。
我们在领域模型设计时,一般太不关注前端用例或者界面类需求。领域模型内实体和服务大多是一些相对稳定的原子业务逻辑。
但是,前端页面或流程以及技术组件总是在不断的变化,比如大量新技术组件的出现会导致基础设施层技术组件的频繁更新和升级,界面要素和流程会随外部需求和业务场景的需要而频繁做出调整等。这些外部变化会对领域模型的核心逻辑产生比较大的影响。
我们一起来看看如何通过分层来隔离外部变化对领域模型的影响?
分层架构大多是通过前端或后端适配,逐层控制外部变化向领域层传导,从而降低外部变化对领域模型的影响。
比如在前端应用中可以消化掉页面逻辑和页面流程类需求;在用户接口层可以完成前端应用接口和数据适配,避免将接口和数据适配类需求传导到应用层;在应用层通过服务组合和编排,可以避免用例或服务组合类需求向领域层传导;在基础设施层通过依赖倒置设计,可以隔离技术组件变化对领域逻辑的影响。
这样由外向里逐层消化和隔离外部变化对领域模型的影响,从而可以大限度保持领域模型原子性和长期稳定。一个稳定的领域模型可以给我们带来非常多的好处。
一,领域模型的构建过程是项目团队通用语言建立的过程,领域模型就是团队的通用语言,它会贯穿项目的所有过程。
二,领域模型的业务逻辑大多是可复用的原子逻辑,不易受外部变化的影响。将这些核心逻辑沉淀到领域层,让核心逻辑更聚焦,核心代码更内聚。然后在应用层通过应用服务对领域层服务完成组合和编排,可以大量复用领域层的核心业务逻辑代码,从而提升代码复用率。
三,领域模型的核心代码可交由专门的资深开发人员维护,从而提升代码质量,也能够保证应用关键核心业务逻辑的长期稳定运行。
四,领域模型内聚合边界清晰,可方便微服务以聚合为单位的功能和代码的拆分和重组,让微服务具有更强的演进能力。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。