什么是DDD
domain driven design 领域驱动设计
Domain-driven design (DDD) is an approach to software development for complex needs by connecting the implementation to an evolving model.
DDD 并不是一种架构,而是一种架构设计的方法论,是一种设计思想。它通过围绕业务概念构建领域模型,实现对业务复杂性的控制,将技术实现的复杂性分离开,简化复杂的业务领域,设计出清晰的应用与领域边界,以解决各种业务问题和保持软件的演化能力。
分层架构
image.pngimage.png将一个复杂的程序切分成层。开发每一个层中内聚的设计, 让每个层仅依赖于它底下的那层。遵照标准的架构模式以提供层的 低耦合。将领域模型相关的代码集中到一个层中,把它从用户界 面、应用和基础设施代码中分隔开来。
将应用划分成分离的层并建立层间的交换规则很重要。如果代码没 有被清晰隔离到某层中,它会迅即混乱,因为它变得非常难以管理 变更。在某处对代码的一个简单修改会对其他地方的代码造成不可 估量的结果。领域层应该关注核心的领域问题。它应该不涉及基础 设施类的活动。用户界面既不跟业务逻辑紧密捆绑也不包含通常属 于基础设施层的任务。在很多情况下应用层是必要的。它会成为业 务逻辑之上的管理者,用来监督和协调应用的整个活动。
网友评论