当前位置: 首页 > 软件库 > Web应用开发 > Web框架 >

DDDplus

轻量级业务中台开发框架
授权协议 Apache
开发语言 Java
所属分类 Web应用开发、 Web框架
软件类型 开源软件
地区 国产
投 递 者 经和歌
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

一套轻量级业务中台开发框架,以DDD思想为本,致力于业务资产的可沉淀可传承,全方位解决复杂业务场景的扩展问题,实现中台核心要素,赋能中台建设。

融合了前中台复杂生态协作方法论,充分考虑组织架构、技术债、学习门槛、可演进性、运维成本和风险而开发的,解决业务开发痛点,是中台架构的顶层设计和完整解决方案。

Current status

Used for several complex critical central platform projects in production environment.

多个复杂的中台核心项目生产环境下使用。

Quickstart

Please visit Quickstart.

Features

  • Based on DDD, but beyond DDD
  • 14 key business abstractions cover most complex business scenarios
  • Full layered extensibility
  • Empowers InnerSource
  • Total solutions oriented

核心特性:

  • 以DDD架构思想为本,面向复杂业务场景架构设计
    • 通过代码框架提供足够约束,让DDD不再仅停留在思想层面
    • 降低DDD上手门槛,为研发减负,防止落地偏差
    • 降低复杂度,持续保障业务资产的可沉淀可传承
    • 提供dddplus-archetype,自动生成包含最佳实践的工程脚手架
  • 14个核心业务抽象(常用的9个),勾勒出业务中台骨架
    • 中台架构的顶层设计
    • 以不变应万变
    • 研发填空式开发
  • 全方位解决业务的不确定性
    • 业务逻辑、流程、逻辑模型、数据模型的扩展、多态体系
    • 框架本身支持再次扩展
    • 扩展业务包支持不重启热更新
  • 支撑中台战略的复杂生态协作
    • 前台、中台解耦
    • 业务隔离
    • InnerSource协同机制
  • 完整的解决方案
    • 业务能力演化,业务测试,最佳实践,架构持续防腐,重构的导流验证,绞杀者落地方案等
    • 提供一套完整的Demo工程,手把手真实场景教学

Modules

dddplus
   ├── dddplus-spec    - Specification of DDDplus
   ├── dddplus-runtime - Runtime implementation
   ├── dddplus-plugin  - Plugin jar hot reloading mechanism
   ├── dddplus-unit    - Extra unit test facilities
   ├── dddplus-enforce - Enforce expected evolvement of the business architecture
   └── dddplus-test    - Fully covered unit test cases

Key abstractions

Reference documentation

Please visit Javadoc.

Using DDDplus

已推送至Maven中央库,可直接引入。

Maven

<properties>
    <dddplus.version>1.0.1</dddplus.version>
</properties>

<dependency>
    <groupId>io.github.dddplus</groupId>
    <artifactId>dddplus-runtime</artifactId>
    <version>${dddplus.version}</version>
</dependency>

Gradle

dependencies {
    ...
    compile 'io.github.dddplus:dddplus-runtime:1.0.1'
}

Building from Source

git clone https://github.com/funkygao/cp-ddd-framework.git
cd cp-ddd-framework/
mvn install # will run all test cases

The Demo

Please visit 使用该框架搭建订单履约中台的例子.

FAQ

Please visit FAQ.

Landscape of Central Platform

业务中台建设全景图。

Contribution

You are welcome to contribute to the project with pull requests on GitHub.

If you find a bug or want to request a feature, please use the Issue Tracker.

For any question, you can use Gitter Chat to ask.

Licensing

DDDplus is licensed under the Apache License, Version 2.0 (the "License"); you may not use this project except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

 相关资料
  • 问题内容: 是否有一个提供发布/订阅模式的Java轻量级框架? 一些理想的功能 支持泛型 向发布者注册多个订阅者 API主要是接口和一些有用的实现 完全不需要内存,持久性和事务保证。 我了解JMS,但这对我来说太过分了。发布/订阅的数据是文件系统扫描的结果,扫描结果被馈送到另一个组件进行处理,然后在将其馈给另一个组件之前进行处理,依此类推。 编辑:所有在同一过程中。bean的PropertyCha

  • 本文向大家介绍轻量级javascript 框架Backbone使用指南,包括了轻量级javascript 框架Backbone使用指南的使用技巧和注意事项,需要的朋友参考一下 Backbone 是一款基于模型-视图-控制器 MVC 模式的轻量级javascript 框架 ,可以用来帮助开发人员创建单页Web应用。 借助Backbone 我们可以使用REST的方式来最小化客户端和服务器间的数据传输,

  • 本文向大家介绍前端轻量级MVC框架CanJS详解,包括了前端轻量级MVC框架CanJS详解的使用技巧和注意事项,需要的朋友参考一下 选择正确的库 创建一个JS APP没有好的工具是很有难度的,jQuery只是操作DOM的库,没有提供任何创建APP的基础,这就是为什么我们要一个类似CanJS的专门的库。 CanJS 是一个轻量级的MVC库,提供你创建一个JS APP所需的工具。 CanJS 是一个轻

  • 开发商使用Hyperledger Composer来数字化业务网络。业务网络由网络中的多个参与者访问,其中一些参与者可能负责维护(托管)网络本身,称为网络维护者。 通常,网络的每个维护者会运行几个peer节点(用于崩溃容错),并且Hyperledger Fabric跨peer节点复制分布式账本。 模型 开发人员与业务分析师合作,为业务网络定义领域数据模型。数据模型使用Composer建模语言进行表

  • 问题内容: 我正在寻找一种轻巧的方法来使我的程序(用C语言编写)能够在Windows或Linux上播放音频文件。我目前正在使用Windows本机调用,这实际上只是传递文件名的单个调用。我想要在Linux上也可以使用的类似软​​件。 音频文件是Microsoft PCM,单通道,22Khz 有什么建议么? 问题答案: 由于我也在寻找问题的答案,因此我做了一些研究,但没有找到播放音频文件的任何简单(类

  • 本文向大家介绍浅谈Android轻量级的数据缓存框架RxCache,包括了浅谈Android轻量级的数据缓存框架RxCache的使用技巧和注意事项,需要的朋友参考一下 请求网络数据是在安卓开发中使用最频繁的一个功能,网络请求的体验决定了用户对整个APP的感觉,因此合理地使用缓存对网络请求的数据进行处理极为重要。合理的进行缓存和网络请求,可以为APP带来更优秀的体验。图片的缓存有Picasso、Gl