Project Icon

cp-ddd-framework

轻量级领域驱动设计增强框架,支持业务建模和系统架构演进

DDDplus 是一个轻量级的领域驱动设计(DDD)增强框架,支持正向和逆向业务建模,有助于可视化完整的领域知识,并促进复杂系统架构的发展。该框架弥补了 DDD 中的缺失概念,简化了其实现过程。DDDplus 提供可视化的业务建模 DSL 和多种路由机制,适用于复杂业务场景,已在多个关键生产环境中的中央平台项目中使用。

项目介绍:DDDplus

DDDplus 是什么?

DDDplus,之前名为 cp-ddd-framework(cp代表 Central Platform:中台),是一个轻量级的领域驱动设计(DDD)增强框架。它旨在支持前向和逆向的业务建模,帮助复杂系统架构的演进。

项目特点

  1. 补全 DDD 构建模块:它填补了 DDD 中缺失的概念,并增强了构建模块,帮助开发者在进行实际建模时克服常见障碍。

  2. 逆向建模 DSL:DDDplus 提供了一种逆向建模的领域特定语言(DSL),可以从代码中可视化完整的领域知识。

  3. 扩展点与路由机制:内置多种路由机制的扩展点,使其适用于复杂的业务场景,提供灵活的软件解决方案。

优势

  • 通过详细的 Javadoc 和示例,它消除了频繁遇到的 DDD 理解误区,使整个软件开发过程(包括分析、设计、设计评审、实现、代码审查、测试)形成一个正反馈的闭环。
  • 它连接前线开发者与架构师、产品经理、业务措施持有人及管理团队,使得领域模型的构建更加一致和高效。

当前状态

DDDplus 已被用于生产环境中多个复杂且关键的中台项目。

如何开始?

前向建模

要开始使用 DDDplus,可以在 Maven 项目中添加以下依赖:

<dependency>
    <groupId>io.github.dddplus</groupId>
    <artifactId>dddplus-runtime</artifactId>
</dependency>

并结合 SpringBoot 进行集成:

@SpringBootApplication(scanBasePackages = {"${your base packages}", "io.github.dddplus"})
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class);
    }
}

逆向建模

要使用逆向建模功能,请在项目中添加以下依赖:

<dependency>
    <groupId>io.github.dddplus</groupId>
    <artifactId>dddplus-spec</artifactId>
</dependency>

通过注释您的代码,DDDplus 将解析 AST 并生成领域模型的多种视图:

mvn io.github.dddplus:dddplus-maven-plugin:model \
    -DrootDir=${colon separated source code dirs} \
    -DplantUml=${target business model in svg format} \
    -DtextModel=${target business model in txt format}

此功能假定代码库内的类名是唯一的。

架构守护

DDDplus 还提供了架构守护的功能:

mvn io.github.dddplus:dddplus-maven-plugin:enforce \
    -DrootPackage={your pkg} \
    -DrootDir={your src dir}

贡献与联系

欢迎通过 GitHub 上的 pull requests 投稿,如发现问题或想请求新功能,可使用 Issue Tracker。对于任何问题,可加入 Gitter Chat 社区进行交流。

开源许可

DDDplus 是基于 Apache License 2.0 协议开源的,用户需遵从该许可协议。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号