本文已使用 Google Cloud Translation API 自动翻译。
某些文档最好以原文阅读。
领域驱动设计 (DDD) 是一种复杂系统的软件开发方法。它基于以下原则:
领域:领域是软件试图解决的问题的核心。它是用户和利益相关者的专业领域。
模型:模型是域的表示。它是一个概念模型,可以捕获用户和利益相关者的知识和专业知识。
软件:软件是一种可以用来操作模型的工具。它不是领域,不应关注模型的实现细节。
设计:设计是创建模型并将其转化为软件解决方案的过程。
DDD 的主要目标是创建一个准确反映领域的模型,并可用于解决领域中的问题。为此,DDD 使用了多种技术,包括领域建模、领域特定语言和战略设计。
领域建模是创建领域模型的过程。该模型是捕获用户和利益相关者的知识和专业知识的域的概念表示。它不是软件模型,不应关注软件的实现细节。
领域建模用于理解领域并识别领域中的关键概念和关系。该模型用作设计软件解决方案的基础。
特定于领域的语言 (DSL) 是特定于特定领域的语言。它们用于以计算机可以理解的形式表达领域模型中的概念和关系。
DSL 用于从域模型生成代码。该代码可用于实施软件解决方案。
战略设计是选择满足用户和利益相关者需求的特定软件解决方案的过程。它基于领域模型和领域特定语言。
战略设计用于确定在软件中实现领域模型的最佳方式。它考虑了不同方法之间的权衡,并选择对特定问题最有效的方法。
领域驱动设计是一种强大的复杂系统软件开发方法。它基于领域是软件试图解决的问题的核心这一原则。
DDD 使用多种技术(包括领域建模、领域特定语言和战略设计)来创建可用于解决领域中问题的领域模型。