基于IDEA Plugin插件开发,撸一个DDD脚手架

本文介绍了如何结合IntelliJ IDEA Plugin开发技术,创建一个DDD工程脚手架。通过自定义插件,实现图形化配置,生成包含领域层、应用层、基础设施层和接口层的DDD结构。利用FreeMarker模板引擎,动态生成工程框架,并提供扩展步骤,以适应不同业务需求。源码和详细步骤可参考作者分享。
摘要由CSDN通过智能技术生成

基于IDEA Plugin插件开发,撸一个DDD脚手架

  • 最近很感兴趣结合 IDEA Plugin 开发能力,扩展各项功能。也基于此使用不同的案例,探索 IDEA Plugin 插件开发技术。希望这样的成体系学习和验证总结,能给更多需要此技术的伙伴,带来帮助。
  • 源码地址: https://github.com/fuzhengwei/CodeGuide#1-%E6%BA%90%E7%A0%81

一、前言

研发,要避免自嗨!

你做这个东西的价值是什么?有竞品调研吗?能赋能业务吗?那不已经有同类的了,你为什么还自己造轮子?

你是不是也会被问到这样的问题,甚至可能还有些头疼。但做的时候挺嗨,研究技术嘛,还落地了,多刺激。不过要说价值,好像一时半会还体现不出来,能不能赋能业务就不更不一定了。

可谁又能保证以后不能呢,技术的点是一个个攻克尝试的才有机会再深度学习后把这些内容连成一片,就像单说水、单说沙子、单说泥巴,好像并没有啥用,但把它们凑到一块再给把火,就烧成了砖,砖就码成了墙,墙就盖成房。

二、需求目的

我们这一章节把 freemarker 能力与 IDEA Plugin 插件能力结合,开发一个DDD 脚手架 IDEA 插件 ,可能你会想为什么要把脚手架开发到插件里呢?还有不是已经有了成型的脚手架可以用吗?

首先我们目前看到的脚手架基本都是网页版的,也就是一次性创建工程使用,不过在我们实际使用的时候,还希望在工程创建过程中把数据库、ES、Redis等生成对应的 ORM 代码,减少开发工作量。并且在使用的工程骨架的过程中,还希望可以随着开发需要再次补充新的功能进去,这个时候网页版的脚手架都不能很好的支持了。此外一些大厂都会自己的技术体系,完全是使用市面的脚手架基本很难满足自身的需求,所以就需要有一个符合自己场景的脚手架了。

那么,我们本章节就把脚手架的开发放到 IDEA 插件开发中,一方面学习脚手架的建设,另外一方面学习如何改变工程向导,创建出自己需要的DDD结构脚手架。

三、案例开发

1. 工程结构

guide-idea-plugin-scaffolding
├── .gradle
└── src
    ├── main
    │   └── java
    │   	└── cn.bugstack.guide.idea.plugin 
    │       	├── domain
    │       	│	 ├── model   
    │       	│	 │	└── ProjectConfigVO.java       
    │       	│	 └── service   
    │       	│	 	 ├── impl     
    │       	│	 	 │	└── ProjectGeneratorImpl.java  
    │       	│	 	 ├── AbstractProjectGenerator.java     
    │       	│	 	 ├── FreemarkerConfiguration.java      
    │       	│	 	 └── IProjectGenerator.java      
    │       	├── factory
    │       	│	  └── TemplateFactory.java  
    │       	├── infrastructure
    │       	│	 ├── DataSetting.java       
    │       	│	 ├── DataState.java  
    │       	│	 ├── ICONS.java      
    │       	│	 └── MsgBundle.java     
    │       	├── module  
    │       	│	 ├── DDDModuleBuilder.java    
    │       	│	 └── DDDModuleConfigStep.java         
    │       	└── ui
    │       	 	 ├── ProjectConfigUI.java  
    │       	 	 └── ProjectConfigUI.for
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值