本文内容提要: 1
领域驱动设计之领域模型 2
为什么建立一个领域模型是重要的 3
领域通用语言(Ubiquitous Language) 4
将领域模型转换为代码实现的最佳实践 5
领域建模时思考问题的角度 6
领域驱动设计的标准分层架构 7
领域驱动设计过程中使用的模式 关联的设计 实体(Entity) 值对象(Value Object) 领域服务(Domain Service) 聚合及聚合根(Aggregate,Aggregate Root) 工厂(Factory) 仓储(Repository) 8
设计领域模型的一般步骤 9
领域驱动设计的其他一些主题 10
一些相关的扩展阅读 领域驱动设计之领域模型 2004 年Eric Evans 发表Domain-Driven Design – Tackling Complexity in the Heart of Software (领域驱动设计),简称Evans DDD
领域驱动设计分为两个阶段: 1
以一种领域专家、设计人员、开发人员都能理解的“通用语言”作为相互交流的工具,在不断交流的过程中不断发现一些主要的领域概念,然后将这些概念设计成一个领域模型; 2
由领域模型驱动软件设计,用代码来表现该领域模型
由此可见,领域驱动设计的核心是建立领域模型
领域模型在软件架构中处于核心地位;软件开发过程中,必须以建立领域模型为中心
为什么建立一个领域模型是重要的 领域驱动设计告诉我们,在通过软件实现一个业务系统时,建立一个领域模型是非常重要和必要的,因为领域模型具有以下特点: 1
领域模型是对具有某个边界的领域的一个抽象,反 映 了 领域内用户 业务需 求 的本质 ;领域模型是有边界的,只 反 应 了 我们在领域内所 关注 的部 分; 2
领域模型只反映业务,和任何技术实现无关;领域模型不仅能反映