Loading...

文章背景图

COLA:阿里整洁面向对象分层架构脚手架创建与使用指南

2026-08-31
0
- 字
- 分钟

COLA:阿里整洁面向对象分层架构脚手架创建与使用指南

一、项目官方信息

项目 信息
GitHub 仓库 alibaba/COLA
开源协议 LGPL-2.1
主要语言 Java
Star 数 约 13k
JDK 要求 17+

COLA 是 Clean Object-Oriented and Layered Architecture 的缩写,代表"整洁面向对象分层架构",是阿里开源的应用架构脚手架,指导复杂业务系统的分层与解耦,目前已发展到 COLA v5。

COLA 仓库封面

二、官方图片

上图为 COLA 仓库在 GitHub 上的社交预览图。

三、环境要求

  • JDK 17+;
  • Maven 3.6+;
  • IDEA 或其他 Java IDE。

四、创建步骤

1. 引入脚手架

<dependency>
  <groupId>com.alibaba.cola</groupId>
  <artifactId>cola-component-statemachine</artifactId>
  <version>最新版本</version>
</dependency>

2. 生成工程骨架

用官方 Maven 原型快速生成:

mvn archetype:generate \
  -DgroupId=com.example \
  -DartifactId=demo \
  -DarchetypeArtifactId=cola-framework-archetype \
  -DarchetypeGroupId=com.alibaba.cola

3. 标准分层结构

demo
├── adapter/      # 适配层(controller)
├── app/          # 应用层(service)
├── domain/       # 领域层
└── infra/        # 基础设施层

4. 启动应用

mvn spring-boot:run

五、使用方法

  • DDD 分层:adapter/app/domain/infra 职责清晰;
  • 状态机:内置 cola-component-statemachine;
  • 扩展点:用 Extension 点做业务差异隔离;
  • 命令/事件:基于 CQRS 的命令驱动;
  • AI 友好:Harness 工程,适合 AI 辅助开发。

六、常见问题 FAQ

  1. COLA 是什么? 整洁面向对象分层架构,指导复杂系统的工程分层。

  2. 支持 JDK 几? v5 要求 JDK 17+。

  3. 标准包结构? adapter、app、domain、infra 四层。

  4. 内置什么组件? 状态机、扩展点、命令、事件等。

  5. 适合单体还是微服务? 两者都适用,强调边界与解耦。

  6. 协议是什么? LGPL-2.1。

七、跳转链接

评论交流

文章目录