Alibaba开源框架COLA的个人心得 |
您所在的位置:网站首页 › cola是怎么读 › Alibaba开源框架COLA的个人心得 |
COLA框架各层职责: 1.官网定义: 1)适配层(Adapter Layer):负责对前端展示(web,wireless,wap)的路由和适配,对于传统B/S系统而言,adapter就相当于MVC中的controller; 2)应用层(Application Layer):主要负责获取输入,组装上下文,参数校验,调用领域层做业务处理,如果需要的话,发送消息通知等。层次是开放的,应用层也可以绕过领域层,直接访问基础实施层; 3)领域层(Domain Layer):主要是封装了核心业务逻辑,并通过领域服务(Domain Service)和领域对象(Domain Entity)的方法对App层提供业务实体和业务逻辑计算。领域是应用的核心,不依赖任何其他层次; 4)基础实施层(Infrastructure Layer):主要负责技术细节问题的处理,比如数据库的CRUD、搜索引擎、文件系统、分布式服务的RPC等。此外,领域防腐的重任也落在这里,外部依赖需要通过gateway的转义处理,才能被上面的App层和Domain层使用。 5)代理层(Client Layer)不是功能独立的层,而是作为COLA-framework中‘cola-common’模块的第二方库,什么意思?查看cola-common源码和xxx-client的代码,它们的类型应该是平行对应的。即‘xxx-client’包含的代码应该是常见的‘Service’的接口Facade,上下文信息‘Context’以及dto(‘ClientObject’、‘DomainObject’、‘DomainEvent’、‘Cmd’和‘Qry’)等。 2.简单个人理解: 1)适配层(Adapter Layer):通过Controller获取前端信息; 2)应用层(Application Layer):由Adapter层获取命令,分析并分类命令,将不同的信息传递到Domain层相应的处理体系中,调用领域层不同体系做相应业务处理;也可以直接访问Infrastructure层(直接的增删改查就是直接访问基础实施层)。 3)领域层(Domain Layer):主要是封装了核心业务逻辑,并通过领域服务(Domain Service)和领域对象(Domain Entity)的方法对App层提供业务实体和业务逻辑计算。领域是应用的核心,不依赖任何其他层次; 4)基础实施层(Infrastructure Layer):主要负责技术细节问题的处理,通过Mapper与数据库交涉;领域防腐的重任在这里,外部依赖需要通过gateway的转义处理,才能被上面的App层和Domain层使用。 5)代理层(Client Layer)为框架提供DTO以及服务的接口; 6)我们新加一个模块demo-web-tools,用于一些工具(如easyexcel)的实现,开放层次,可以被其他层次调用; |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |