加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 服务器 > 系统 > 正文

阿里高级技术专家:优秀的应用架构“长”什么样?

发布时间:2021-06-04 09:33:36 所属栏目:系统 来源:互联网
导读:很多同学不止一次和我反馈,我们的系统很混乱,主要表现在: 应用的层次结构混乱:不知道应用应该如何分层、应该包含哪些组件、组件之间的关系是什么; 缺少规范的指导和约束:新加一段业务逻辑不知道放在什么地方(哪个类,哪个包)、应该起什么名字比较合适

很多同学不止一次和我反馈,我们的系统很混乱,主要表现在:

应用的层次结构混乱:不知道应用应该如何分层、应该包含哪些组件、组件之间的关系是什么;

缺少规范的指导和约束:新加一段业务逻辑不知道放在什么地方(哪个类,哪个包)、应该起什么名字比较合适?

解决这些问题,正是我创建COLA的初心之一——试图探索一套切实可行的应用架构规范,这个规范不是高高在上的纸上谈兵,而是可以复制、可以理解、可以落地、可以控制复杂性的指导和约束。

自从COLA诞生以来,我收到了很多的意见和建议。同时,我自己在实践过程中,也发现COLA 1.0的诸多不足,有些设计是冗余的并不是很有必要,而有些关键要素并没有囊括。譬如,我最近在思考的应用架构核心和复杂业务代码治理就是对COLA 1.0的反思。

结合实践中的探索和对复杂度治理持续的思考,我决定对COLA进行一次全面的升级,于是有了现在的COLA 2.0。

从1.0到2.0,不仅仅是数字的简单变化,更是架构理念和设计理念的升级,其主要变动点包括:

新架构分层:Domain层不再直接依赖Infrastructure层。

新组件划分:对组件进行了重新定义和划分,加了新组件,去除了一些老组件(Validator,Convertor等)。

新扩展点设计:引入了新概念,让扩展更加灵活。

新二方库定位:二方库不仅仅是DTO,也是Domain Model的轻量级表达和实现。

新架构分层

在COLA 1.0中,我们的分层是如下图所示的经典分层结构:

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读