领域模型设计
文章平均质量分 91
蜜糖的代码注释
这个作者很懒,什么都没留下…
展开
-
了解一下CQRS模式
背景问题 简单的需求 当我们系统中的数据模型层级较少时,数据模型足够简单时,模型与数据库可以直接进行映射。这种简单数据模型使我们不需要针对其相互关系进行复杂的建模设计,直接在工程中使用经典的三层模型就足以支撑项目需求。 对于这种简单系统,过度设计会增加后续维护、重构的成本(并不能保证预设计能完美符合后续需求)。同时,对于简单系统,我们大部分的需求都只涉及其中的少量数据模型逻辑处理。 而我们直接对数据模型进行CURD就能满足需求,进而的结论就是: 针对简单需求,我们不需要特别区别查询和增删改的程序结原创 2022-03-06 15:48:48 · 2763 阅读 · 0 评论 -
用UML来描述领域模型吧
UML统一建模语言的目的是在于提出一种独立于程序实现之外的描述方式,以可视化的方式对对象进行建模。可以用于对产品的描述、文档的编制等。同时因为其使用了严格的图形语意的规范,所以可以保证所有模型提供的信息方式是一致的,便于直接理解和阅读。 而对于复杂系统来说,通过对不同层级的系统进行建模。就可以将整个系统的模型描述清晰了。 UML建模分为结构图( structure diagrams )和行为图(behavior diagrams)两大类。 结构图: 结构图主要是为了描述一个系统中的静态结构关系,包含原创 2022-02-18 08:00:00 · 750 阅读 · 0 评论 -
如何选择充血模型和贫血模型
从领域模型说起 回顾一下我们进行领域建模时候的流程: 进行需求分析 进行用例设计 针对用例进行领域建模 针对领域模型并行进行数据库设计和程序设计。 在经过了前面几步分析后,我们会得到领域模型以及他们之间的关系。在这之后我们要根据领域模型分别进行数据库设计与程序设计。我们会根据领域模型之间的关系将模型之间的关系映射到系统表设计之间的关系。那么我们该怎么进行对应的程序设计呢? 一般来说: 将领域模型设计转化为程序设计,有贫血模型与充血模型两种方法。 贫血模型 在之前的文章中我们举过一个订单模型的例子: 在原创 2022-02-16 08:00:00 · 217 阅读 · 0 评论