关于myddd-spring-boot的声明与建议
1. 声明
myddd-spring-boot
并非是由我从零开始构建的代码,它来源于dddlib
,无论何时我都会明白无误的申明这一点。
dddlib
是杨宇老师的领域驱动开源框架,其开源地址为https://github.com/dayatang/dddlib
我早年工作的公司,用的就是这个框架,因此对这个我对这个框架有一定的熟悉度。
1.1 myddd-spring-boot的"诞生记"
将dddlib改造为myddd-spring-boot的一个最主要原因是dddlib并未适配Spring Boot,我在2020年需要开发一个后台服务,想用Spring Boot,又想用dddlib,当时考虑到dddlib很久没有更新,似乎处于不再维护的状态,因此决定在它的基础之上,将其与Spring Boot深度适配。
dddlib我只拿了其中与ddd概念有关的几个模块,如domain,ioc,repository以及查询通道等,其它与ddd概念无关的一些模块,我没有拿过来。
这便是myddd-spring-boot最开始的来源。
2. 2.0的重写
我已经按照自己对ddd的理解,对myddd-spring-boot进行了大范围的重构,因此myddd-spring-boot 2.x版本开始,已经与dddlib告别。
并且从2.x版本开始,已经按照TDD的方式来开发与维护myddd-spring-boot,并且加入了SonarQube质量管控,单元测试覆盖率不少于80%。
3. SonarQube质量报告
当前主干的SonarQube的质量状态为:
4. myddd-spring-boot 与 myddd-vertx
我在2021年机缘巧合之下,决定基于Kotlin+Vert.x给自己整理一套新的后端开发技术栈,最核心的原因在于:
- Kotlin是更简洁优雅的语言
- Vert.x是基于异步的性能极佳的框架
在了解了这两个技术后,我毫不犹豫的基于它们,根据自己的ddd的一些理解,抽取了myddd-vertx
基础框架。
如果您愿意尝试,则可以考虑
在后端可以考虑使用更简洁与优雅,性能极为出色的myddd-vertx,而非myddd-spring-boot
当然,这一切仍然由你决定。