Domain Driven Design领域驱动设计

大图:

 

1、interface(用户界面层)
    DTO数据传输对象(Data Transfer Object)
        DTO是数据传输的载体,内部不应该存在任何业务逻辑,通过DTO把内部的领域对象与外界隔离
    Assembler(装配)
        实现DTO与领域对象之间的相互转换,数据交换
    Facade(门面)
        Facade的用意在于为远程客户端提供粗粒度的调用接口,他的主要工作就是将一个用户请求委托给一个或者多个Service进行处理,也就是我们常说的Controller

2、infrastructure(基础实施层)
    向其他层提供通用的技术能力(比如工具类,第三方库类支持,常用基本配置,数据访问底层实现)
    为应用层,传递消息(比如通知)
为领域层 提供持久化机制(最底层的实现)
为用户界面层 提供组件配置

3、application(应用层)
    相对于领域层,应用层是很薄的一层,应用层定义了软件要完成的任务,要尽量简单
        对外 未展现层提供各种应用功能(service)
对内  调用领域层完成各种业务逻辑任务(task) 这一层也很适合写一些任务处理,日志监控

4、Domain(领域层)
    实体
        具有唯一标识的对象  比如:用户(User)包含用户id,姓名,年龄,地址
    值对象
        无需唯一标识的对象  比如:地址对象(包含省份,城市,街道等)
    领域服务
        一些行为无法归类到实体对象或值对象上,本质是一些操作,而非事物
    聚合、聚合根
        聚合是指一组具有内聚关系的相关对象的集合,每个聚合都有一个root和boundary
    工厂
        创建复杂对象,隐藏创建细节
    仓储
        提供查找和持久化对象的方法
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值