谢谢你因为有你
这个标题有点矫情,但我这回是真的想好好谢谢一个东西,那就是我的代码生成器。 别笑,程序员嘛对着代码时间长了,难免有点感情。
这事儿得从上个月说起,当时接了个新项目,需求评审的时候我就感觉不对劲,这不就是换汤不换药吗? 之前的项目我可是吭哧吭哧写了好几个月,现在又要来一遍?我这暴脾气,当时就想撂挑子不干了。
但是!想想房贷,想想娃的奶粉钱,只能忍了。 但是忍归忍,也不能让自己太难受,就开始琢磨,能不能偷个懒? 毕竟程序员的最高境界,就是用最少的代码,实现最多的功能嘛
于是我开始研究代码生成器。之前也用过一些,但总觉得差点意思,要么太死板,改起来费劲,要么生成的代码质量太差,还不如自己手写。这回我决定自己动手做一个!
说干就干,先是花了几天时间调研,看了各种资料,了解了代码生成的原理、模板引擎、代码规范等等。然后开始画原型图,设计界面,考虑各种参数和配置项。
真的是一头雾水,感觉无从下手。但是没办法,硬着头皮上。 我先从最简单的功能开始,比如生成简单的实体类。用什么模板引擎 考虑了半天,选了Velocity,因为之前用过,比较熟悉。
接下来就是写代码了,先是搭框架,然后是写模板,调试,修改,再调试,再修改... 那段时间,我每天晚上都搞到深夜,头发都掉了不少。
遇到最大的坑,是模板的编写。一开始写的模板,生成的代码各种问题,格式不对,命名不规范,甚至还有语法错误。 简直崩溃!只能一遍一遍地修改模板,调整参数,优化逻辑。
后来我发现了一个技巧,就是把生成的代码和手写的代码进行对比,找出差异,然后修改模板,让生成的代码更接近手写的代码。 这样一来,生成的代码质量就提高了不少。
就这样,一边学习,一边实践,磕磕绊绊地,代码生成器总算是能用了。 虽然功能还比较简单,但已经可以生成实体类、DAO、Service等常用的代码了。
最爽的是,可以自定义模板! 也就是说,我可以根据自己的代码风格,定义一套专属的模板,让生成的代码更符合我的口味。
有了这个代码生成器,再做那个新项目,简直不要太轻松! 只需要配置一下参数,点一下按钮,就可以生成大量的代码。 省去了大量重复劳动,我可以把更多的时间花在业务逻辑的思考和优化上。
以前写一个模块,可能要花几天时间,现在只需要几个小时就搞定了。 效率提升了好几倍! 而且生成的代码质量也比较高,减少了出错的概率。
更重要的是,这个代码生成器,可以减少我的焦虑。 以前,看到大量的重复代码,就觉得头疼,只要用代码生成器生成一下,就OK了。 感觉心里轻松多了。
我真的要好好谢谢这个代码生成器,因为它不仅提高了我的工作效率,还减少了我的精神内耗。 我知道它还不够完美,还有很多需要改进的地方。 但我相信,随着我的不断完善,它会变得越来越强大。
这玩意儿,真的是程序员的福音!