【笔记】DDD领域驱动设计精粹——浅谈DDD

本文介绍了DDD(领域驱动设计)的核心概念,包括领域模型、CQS规范、Repository模式以及DP(DomainPrimitive)。作者通过自己的项目经验,详细阐述了如何在实践中运用DDD进行系统重构,旨在帮助读者理解如何避免编写流水账代码,提升业务逻辑的清晰度和代码质量。
摘要由CSDN通过智能技术生成

前言:`

前不久,在工作中使用DDD(领域驱动设计)完成对系统架构和功能的重构,前期参考了很多DDD文章讨论了战略设计划分好模型和领域,然后使用战术设计落实整个项目的重构,重构期间学到了很多DDD的思想,这几天有空整理了一下笔记:


DDD是什么?

DDD(英文名:Domain-Driven Design)领域驱动设计,是一种架构设计方法,DDD主要关注业务中的领域划分领域边界,建立好的领域模型,通过抽象,持续调整架构和优化代码。


CQS规范是什么?

应用层入参的时候使用C(command)、Q(query)、E(Event)作参数接收,返回则用DTO
1.Command作为入参:
适用于对数据进行修改或删除操作,类似POST请求表单提交
2.Query作为入参:
顾名思义,适用于进行数据查询操作,类似GET查询列表数据
3.Event作为入参:
适用于事件回调的场景下使用,例如消息中间件的组内通信,下单推送消息触发事件Event对支付成功之后加积分等操作处理

殷浩详解DDD:如何避免写流水账代码?


领域驱动规范

殷浩详解DDD:领域层设计规范


DP是什么?

DP全称叫Domain Primitive,DDD中常常被用来叫PO,具有自己特征的PO,可以拥有行为,可以参考链接:殷浩详解DDD系列 第一讲 - Domain Primitive


DDD应用架构

殷浩详解DDD系列 第二讲 - 应用架构


Repository是什么?

Repository在DDD中常常用来做仓储层,用于service层调用dao层之间加多一个中间层,让开发者更好的关注于写业务,业务层service通过repository层间接访问dao层,减少代码对数据库的“固化”(解耦)
殷浩详解DDD系列 第三讲 - Repository模式


学习分享:

其他感兴趣的同学可以参考一下:

DDD实战课

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农阿福

看明白的同学,别忘请阿福喝奶茶

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值