DDD领域驱动设计

博客探讨了软件开发中的挑战,如沟通、开发、测试和创新难题,以及三次软件危机。提到了防止项目老化的大泥球模型,并通过引入DDD(领域驱动设计)来分割业务领域。DDD强调业务与软件的紧密联系,提倡使用仓库层和充血模型来管理代码膨胀。文章还对比了传统架构与DDD架构的设计过程,并强调DDD与技术、架构无关,而是关注业务和技术的结合。
摘要由CSDN通过智能技术生成

视频路径https://www.bilibili.com/video/BV18q4y1P7AE?p=2&spm_id_from=pageDriver

问题:
1)沟通难
2)开发难
3)测试难
4)创新难
在这里插入图片描述

三次软件危机

问题:防止项目老化?(大泥球模型)
技术和业务的脱节
在这里插入图片描述
以前是将业务分成一个个微服务。
ddd将一个个业务分成domain。

如何分割领域?

举例子:
在这里插入图片描述

代码老化核心问题是控制代码膨胀

方法:
1)在service和mapper中间加入Repositoty层(仓库)
2)在业务实体中加入业务方法(转账实体中加入转入方法和转出方法)
充血模型和贫血模型
贫血模型导致贫血失忆症
实体和值对象-例子订单表和物品表-订单id和物品id冗余。
问题:什么是业务
ddd业务指造成实体状态变化

最后的设计模型
在这里插入图片描述

对比以前的架构和ddd架构的设计过程
在这里插入图片描述

项目结构
在这里插入图片描述

设计过程:
在这里插入图片描述
业务与软件的关系?(大泥球)
业务向软件靠近 微软erp(不仅买了软件管理架构也更规范了)
软件向业务靠拢 ddd模式

ddd与技术无关与架构无关
在这里插入图片描述
与现在架构妥协后解决方案
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值