使用更少的代码更智能地应用领域驱动设计。
使用 Protobuf 描述实体的命令、事件和状态。
专注于业务逻辑而不是“管道”。 一条命令将仅传递给一个聚合。 预测将获得他们需要的所有事件。 ProcessManager 将涵盖更复杂的场景。 存储、消息传递和其他环境事务与主代码隔离。
内存中和基于 JDBC 的存储实现允许快速实现和测试核心逻辑。 只需几行代码即可将您的应用程序应用于选定的部署环境。
当您更新模型时,会自动为项目的所有语言生成代码。 忘记错过的 hashCode() 或 equals()。
借助 Protobuf 支持,可以扩展模型,保持与应用程序的客户端和服务器节点的向后和未来兼容性。
将单租户应用程序转换为多租户应用程序需要几行代码。 您不必为所有调用引入tenantId 参数。
添加和删除字段,同时保持与旧代码的二进制兼容性; 使用 Protobuf 原生提供的 oneof 处理新机会。 根据系统的整个事件历史构建新的预测。
DDD 书籍中的概念,例如聚合、投影、流程管理器、存储库都在代码中。 有没有想过如何烹饪 BoundedContext? 别再猜了!
业务模型中定义的约束会自动检查命令、事件和实体状态。 了解更多。
该框架促进了与存储和平台无关的代码的开发。 您可以从 JDBC 开始,然后只需更改几行代码即可切换到 Google Cloud Platform Datastore。
在闭源项目中自由使用。 也欢迎您为改进我们的框架做出贡献。
所有数据类型都是不可变的,这使得缓存和共享变得容易。 仅在响应传入消息时使用明确定义的周期执行突变。
如果您需要 CustomerId 或 WorkEstimate 值,您可以在几秒钟内获得多种语言的值。 您还可以拥有二进制存储格式和自动 JSON 支持。
借助 CQRS 和事件驱动架构,您可以分离开发工作流程。 更有经验的团队成员可以专注于核心领域和写入端任务,而读取端和 UI 则由团队的其他成员创建。