【领域驱动设计DDD】入门级实操项目实践

概述

Domain层为绝对的核心,Domain层不依赖任何其他层。Domain层完全描述业务对象,是一个充血模型,且模型中的实体不与数据表相互映射,数据的落库对Domain来说就相当于将对象序列化的保存操作,由Infrastructure层完成。Application层将Domain层进行应用层面的组装,如创建用户时需要先验证用户属性是否正确;UserInterface层可以调用Application层进行业务逻辑的处理(增删改),也可以直接调用Infrastructure层进行数据的读取,实现读写的分离,同时也减少类似服务层仅做一个调用传递的操作,减少代码冗余。

在这里插入图片描述

细说

Domain层

​ 不依赖任何其他层。完成实体的抽象建模。

定义实体(充血模型)User,其中包括用户所需的属性及方法,前者描述实体的状态,后者描述对象的行为(User对象可以做什么)。

定义规范:操作实体的接口,如保存User实体的方法(将User保存到数据库),由Infrastructure层实现。

Infrastructure层

​ 仅依赖Domain层,为Domain层提供服务。

定义数据模型(贫血模型),与数据库表一一映射,支持与Domain层实体的类型转换。

实现规范:实现Domain定义的规范,如保存到数据库。

Application层

​ 仅依赖Domain层,以Domain层实体为“原料”。

定义对象,对外提供完整的、可用的业务实体/领域。

UserInterface层

调用Application进行业务的逻辑处理。

调用Infrastructure层进行数据的读取。

项目实践

  1. 创建一个空项目tim-ddd-one,作为项目容器
  2. 创建各个模块: tim-api,tim-domain,tim-infrastructure,tim-application

需要代码的请私聊,期待一起学习研究.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值