myddd starter 发布第一个版本

在五一休假期间抽了点时间,完成了myddd starter的第一个版本,这是一个非常早期的版本,但也已经可以使用了。

在我向你介绍myddd starter之前,先介绍下myddd

什么是myddd

myddd致力于实践与传播领域驱动理念。它包含开源框架,但更重要的是规范倡导。

结合我自身的经验,在后台,移动端(iOS,Android),前端以及基于Electron桌面开发全栈式理念与实践DDD规范

范围

myddd当前主要涵盖到以下技术方向

1.后端 (Kotlin + Vert.x)2.后端 (Java + Spring Boot) 已转向Kotlin + Vert.x3.基于Electron桌面端(Electron+TS + React)4.前端 (TS + REACT)5.Android (Kotlin) 计划中,未开始6.iOS (Swift) 计划中,未开始

理念

1.坚持以ddd领域驱动思想及整洁架构来驱动各端开发2.尽量不重复制造轮子,而是将主流语言,框架或技术搭配起来,遵照DDD理念进行规范。3.ddd概念众多,众人理解各有偏差,我个人不喜欢与人争议DDD的理念,想法及实践,凡事以自己的理解与实践为核心,故取名为myddd。4.myddd含义为:ddd,我的理解,我的实践,我的传播。

myddd由我个人使用自己业余时间维护。

myddd 2021 规划

myddd在后端,前端及基于Electron的桌面开发已具备雏形,其在移动端的相关实践与规范仍有待开始。

虽然过去数年,我花了较多的时间在移动端两端的开发上,但由于当时自己对编码的领悟与理解,并未将ddd相关理念应用到其上面。所以,移动端这一块仍是空白。

预期今年将会实践。我会以微言码道的app来做实践项目。

myddd的官方开源地址是: https://gitee.com/mydddOrg

myddd starter

myddd starter的官方网站是:https://starter.taoofcode.cc

由于myddd更多的着重于编码的规范,它是对DDD领域驱动编码的实践,同时也是对Robert C. Martin的整洁架构的倡导。在这个过程中我会抽取一些基础类库或者支撑框架,但它的重点仍在规范上。

因为有一定的规范,自然很多东西就会有约束,于是在项目的生成上我就觉得可以做一个简单的工具,这就是myddd starter。

myddd starter是快速生成myddd项目的工具,使用它可以快速生成一个myddd的初始项目,节省这一块的时间。

myddd starter当前支持以下维度的项目生成

•myddd-vertx 基于Kotlin与Vert.x的响应式领域驱动项目,用于后端开发•myddd-web 基于TypeScript与React的领域驱动风格的前端项目,用于前端页面开发•myddd-electron 基于Electron跨平台技术及TypeScript与React的桌面开发,用于跨平台桌面开发

规划与走向

由于是业余爱好,时间有限,不确定任何下一步的功能内容及时间节点。

但预期下一步要做的事在文档上,对已有的myddd-vert.x,myddd-web以及myddd-electron编写详细的编码指引文档。移动端的实践与基础框架也在计划中。

如果有兴趣,你可以关注微言码道的公众号或官方网站 https://taoofcode.cc 以随时了解相关进度。

有关联的一些文章

过去几个月,我写过的一些文章,有几篇与它稍有关联,附录在此,以便您访问与了解。

浅析整洁架构之道(一) 为什么需要整洁架构

浅析整洁架构之道(二) 初步了解The Clean Architecture

浅析整洁架构之道(三) 明析分层原则

为什么我会选择Vert.x与Kotlin

难以置信的性能优势,来自myddd-vert.x的性能测试报告