obase社区Obase开发者QQ群:962698871

Obase对DDD(领域驱动设计)有什么帮助?

作者:陈瑞2020-12-24 15:19评论区阅读本文需要0分钟

obase
obase
陈瑞2020-12-24 15:47:19

领域驱动设计是一种以领域模型为核心的开发理念,在应对大型、复杂系统方面具有显著优势。领域模型的核心地位主要体现在两个方面:它是承载业务需求的核心,所有的领域知识和业务逻辑都封装在领域模型之中,领域模型设计好了,整个项目就有了成功的基础;它是软件工程过程的核心,所有开发团队成员的职责都基于领域模型来定义,产品经理(或领域专家)也基于领域模型与开发团队进行沟通。 既然领域模型处于核心地位,那么我们就要求它具有很强的业务表达能力,能够对领域范围内的现实世界做出完美的抽象。因此,不同于贫血模式中的业务模型,DDD中的领域模型通常是比较复杂的,类之间存在着复杂的关联关系和继承关系,类的封装性也必须得到充分的维护。 Obase对复杂领域模型实现了完全地支持,主要表现在三个方面: (1)支持多方关联、关联类、自关联等复杂构造; (2)支持自定义取值/设值逻辑,支持延迟加载多点触发,严格维护对象封装性; (3)支持关联的独立存储和伴随存储,实现领域模型与数据模型解耦。 此外,Obase还为领域驱动设计带来了三个便利: (1)作为对底层存储体系的抽象,它与DDD中的仓储具有一致的职责定位,因此借助Obase可以快速实现仓储; (2)实现了工作单元模式,将一项业务涉及到的所有修改封装为原子操作,同时还可以自动跟踪对象系统更改; (3)实现了乐观并发模型,为并发场景提供了一种新的冲突处理方案,减少事务和锁的使用,提升系统吞吐量。

回复
obase
匿名回答2020-12-25 13:11:51

111

回复
obase
匿名回答2020-12-25 14:19:35

222

回复
隐藏1条回复
obase
lstrive

同学,你回复错了吧

2020-12-25 20:34:30