1. 前段时间研究ddd, 收藏了很多相关知识,分享出来,希望能够帮助更多的小伙伴了解ddd, 什么是领域驱动设计,并分享在github发现的开源ddd代码
2. ddd 必须强烈点赞阿里两位大佬,一个为殷浩, 一个为cola作者
2.1.1 殷浩文章:
阿里技术专家详解 DDD 系列- Domain Primitive
阿里技术专家详解DDD系列 第二弹 - 应用架构
阿里技术专家详解DDD系列 第三讲 - Repository模式
DDD系列第五讲:聊聊如何避免写流水账代码
2.1.2 文章中的代码:
这个是我fork下来的别人实现的代码
GitHub - lucky-lbc/dddbook: spring boot 领域驱动设计Demo
2.1.3 架构图 (目前来说也不落伍):
2.1.4 笔者目前的服务命名同上也差不多,我的基础设施层模块名 xx-infra
3. cola 项目:
3.1 地址:
GitHub - alibaba/COLA: 🥤 COLA: Clean Object-oriented & Layered Architecture
3.2 代码也有demo
3.3 精华部分:我认为有,我买了作者的书==
3.3.1 复用代码
3.3.2 业务抽象
3.3.3 方法命名
3.4 示例代码分层:
3.5 另外项目中有个模块为 cola-component-dto 个人认为非常棒,传统返回码都是
public class Result{
private int code
private string msg
private Object data
}
大厂的是这样的,主要解决的返回码可以很长,进行区分业务,
public class Response extends DTO {
private static final long serialVersionUID = 1L;
private boolean success;
private String errCode;
private String errMessage
...........
}
4. 知乎的文章,以及配套代码:
领域驱动设计DDD|从入门到代码实践
4.1 知乎文章没了,先凑活看这个吧,都是一样的,我记得,这个有代码
4.2 代码
https://github.com/eyebluecn/smart-classroom-misc
https://github.com/eyebluecn/smart-classroom-subscription
5. 货拉拉的ddd代码,我还在官方回复让他把代码贴出来,结果真贴出来了:
货拉拉用户CRM-DDD战术设计改造实践
7. 支付相关领域ddd代码实践,隐没星辰 大佬:
2024收官|支付系统领域建模最佳实践
8. 目前在微信做支付的 路易十四 大佬 ddd有视频,有代码,有系列文章:
为什么说用例设计在软件开发中很重要
6. 美团,大众点评的文章:
DDD在大众点评交易系统演进中的应用
领域驱动设计DDD在B端营销系统的实践7
7. 没有文章有代码的:
7.1 订单履约:
GitHub - 3thinkthendoit/think-oms-ddd: 领域驱动设计(DDD)架构实践, 基于四层架构的开发的订单OMS
7.2 架构图:
8. 总结:
代码还有很多,就不贴了,上述的大部分都有实例代码,有文章,相信能够打通你的任督二脉!
多练,多思考自然就会了。更要多画图!