MVC向cola迁移

什么是cola

cola是张建飞在阿里摸索的一套基于ddd的架构风格,COLA 是 Clean Object-Oriented and Layered Architecture的缩写,代表“整洁面向对象分层架构”。 目前COLA已经发展到COLA v5。

cola组成

fabdf1fa69da4bbe8d5bc47ca1373858.png

cola分为主架构、cola组件,这里着重看主架构

1)适配层(Adapter Layer):controller层 对应暴露给外部的接口,定时任务,kafka等中间件的消费者,是整个应用的入口

2)应用层(Application Layer):一般用于业务处理,可以直接调用基础设施层,调用client层,调用domain层实现的gateway、model、充血模型

3)领域层(Domain Layer):主要是封装了核心业务逻辑,并通过领域服务(Domain Service)和领域对象(Domain Entity)的方法对App层提供业务实体和业务逻辑计算。领域是应用的核心,不依赖任何其他层次;如果没有分清领域模型也可以先不放代码进去。

4)基础实施层(Infrastructure Layer):主要负责技术细节问题的处理,比如数据库的CRUD、搜索引擎、文件系统。此外,领域防腐的重任也落在这里,外部依赖需要通过gateway的转义处理,才能被上面的App层和Domain层使用。

5)客户端层(client): 主要是调用外部的接口,如微服务调用中的feign调用定义,restTemplate等RPC调用,相对比4.0,从基础设施层抽取出来独立作为一个模块

其中application层也可以通过domain依赖反转来调用基础设施层

7ad39b4130de4f90937be7b7189992b4.png

5102aacb16ac4fee8cb0312d13bd3e5e.png

结构迁移

64369ad9ab494cfba744ebd22015c88b.png

4d08e332ce85453592a90a3445333193.png

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值