领域模型是领域中真实情况对象的可视化表示。 领域是一个关注点。它用于指代你正在处理的领域。 该模型是一个图表,对于领域模型,类图UML被广泛使用。类图仅用于符号表示。 领域模型这个术语并不意味着一组描述软件类的图表。 例如,想象一个商店。为该商店构建一个全新的销售点系统(我们称之为POS系统)。 POS系统是一种计算机应用程序,用于记录销售和处理付款。因此,您将专注于POS系统的领域。 现在,您将概念化将用于此系统的对象。 因此,您将获得Sale、Payment、Register、Item等对象。 在领域模型中,您对这些对象进行建模,并绘制它们之间的关联,以便您可以高层次地了解此系统的工作原理。 POS领域模型的示例如下:
这篇文章可能会对您有所帮助:https://dddcommunity.org/learning-ddd/what_is_ddd/ 基本的想法是,领域就是问题领域,而模型是它的模型。上述文章比我更优雅地表达了这一点,如果您想深入了解,那里还有许多其他资源。
从Eric Evans的《领域驱动设计:软件核心复杂性应对之道》一书的角度回答: 领域模型是描述领域的选定方面的抽象系统,可用于解决与该领域相关的问题。实际上,这意味着以下内容。输入端有领域专家、领域知识源以及软件产品的需求。建模意味着引出与正在开发的软件相关的领域知识的相关部分,并以某种方式表示它。如果我理解作者正确的话,模型可以用许多方式表示:作为文本、图表、代码、口头交流形式等。模型与迭代式软件开发并行更新,为软件开发的需要进行重构。因此,领域模型是与给定软件开发项目相关的领域知识的选择性和结构化表示。
领域模型是一组准确地模拟特定业务领域的结构。简单来说,它包含实体、枚举、值对象、异常/自定义异常、接口、服务等构造,全部都代表着该领域模型。任何能够对业务领域描述产生影响的内容,都会被包含在其中。另一方面,不参与该描述的构造,如UI代码、基础设施相关的代码、持久化对象、各种工具等,则被视为DDD背景下的第三方/外部关注点。请查看本短文。 https://fiseni.com/posts/what-is-a-domain-model/