什么是 DDD 领域驱动设计
🔜 是一种软件设计方法,核心思想是通过领域驱动设计方法定义领域模型,从而确定业务和应用边界,保证业务模型和代码模型的一致性。它倡导统一语言,提出了一系列概念,包括实体、值对象、聚合根等。
🔜 优势:业务逻辑清晰、对齐业务目标:通过领域模型与业务紧密结合,开发团队能够更深入理解和反映业务需求。DDD 强调与业务专家的持续沟通,保持领域模型与实际业务一致,避免业务需求在代码实现过程中失真。提高系统的可维护性和可扩展性:通过明确划分限界上下文,系统可以按业务模块进行分层和拆分,每个上下文独立演进,减少耦合度。这为团队应对复杂的业务需求变化提供了灵活性。领域模型统一业务语言:DDD 提出一种“通用语言(Ubiquitous Language)”,即在开发团队与业务人员之间建立一致的语言体系,保证沟通和理解一致性。这使得业务变更和需求传递更加顺畅,并能反映到领域模型和代码中。聚焦业务核心逻辑:DDD 强调通过限界上下文和领域模型来聚焦业务中的复杂问题,使开发人员更加专注于业务核心部分,而非技术细节,如数据存储和传输。
🔜用DDD不用三层架构的原因:
- 三层架构的分层式逻辑概念,在物理上是中心化的集中式架构,并不适合分布式