论坛首页 入门技术论坛

最近开发了一套代码生成工具。

浏览 43375 次
该帖已经被评为新手帖
作者 正文
   发表时间:2008-03-14  
代码生成的话,那需要代码模板配置,目录结构配置,建议参考jsp生成html的过程
0 请登录后投票
   发表时间:2008-06-17  
fang9159 写道

.......
1.可以提高一定的工作效率,因为可以生成60%-80%的代码,而且有IO处理,
......



60%-80%的代码有点悬乎,呵呵,那么项目的业务代码能占多少呢??
0 请登录后投票
   发表时间:2008-06-18  
我也做过一些,主要是使用freemaker或者velocity等模板来实现,只能是符合公司的代码框架、规范,真的太小儿科,不是打击LZ,一个月时间真的太久,几个小时就可以完成的事情
0 请登录后投票
   发表时间:2008-06-22  
如果代码基于模型,就是说用户关心的业务模型的话,那么,这个代码自动生产还是有用处的

代码模板是以局限性的,是固定的是不变的。但是不同的项目来说,需求是变化的,所以基于
模型就可以灵活的生成针对需求的代码。

任何程序都可以细分为三个部分,输入、加工、输出。输入方面现在的应用系统来说往往是
用户的操作和内置的。输出就是呈现来。对于业务逻辑的处理功能肯定是需要手工开发的。
但是输入、输出的工作是可以通过定义呈现模型加上少量修来来完成的。

从上面的意义来说,这就节省了工作量了。这个代码自动生成工具就有价值了,对吗?

daquan198163 写道
关于你说的三个作用:
1.可以提高一定的工作效率,因为可以生成60%-80%的代码,而且有IO处理,是可以直接生成到你指定好的工作目录里面去。开发人员之用将生成的配置文件拷贝到相应的目录即可,那么开发人员可以把更多的精力投入在复杂业务逻辑和技术攻关里面。
2.可以让项目做的更统一,因为生成的后台代码和前台代码是统一的,界面也是统一的,那么项目就是统一的风格,不会出现这个人的界面是一样,其他人又是另一样。
3.可以节约单元测试,系统测试的成本,不用局限于测一些共性,简单的功能。
=============================================================
1、我认为通过代码生成来提高工作效率很有限,因为磊代码只占整个开发工作量的很小一部分,
而且根据你的说法,应该是在一开始的时候一次性的生成一些基础代码,其实完全可以用项目模板来做这件事。
2、同上
3、能生成的只是少数,大量的新开发业务逻辑还是需要单元测试

0 请登录后投票
   发表时间:2008-06-22  
基于模型的话,这个是可以定义的,就是说可以定义字段的唯一性、对于CRUD过程中出现的错误如何处理等等
也就是说部分通用的也无逻辑可以在代码自动生成的时候考虑进去的


downpour 写道
惊鸿逝水 写道

不管是不是ORM,就算是简单的DAO也可以用一条语句实现,但是面对类似的几十个的CRUD(只是表名不一样),用代码生成器选择多个表,1秒钟就帮你批量生成所谓的重复代码,总比手写有效率吧!


和你怎么说不明白呢?在一个复杂的企业应用里面,是极少有纯的CRUD代码的。你在添加一个User的时候,难道不用去校验其用户名是否已经重复,就直接save进数据库了?对于每个表,CRUD的逻辑都不一样,你的代码生成有甚么意义?

基础代码的含义是针对框架的简单封装,具体的业务逻辑开发需要的则是大量的业务分析和单元测试,这恰恰都是一个软件和核心,迷信甚么代码生成的,我敢说,写出来的代码多数都是无法满足严格的单元测试的。

0 请登录后投票
   发表时间:2008-06-22  
我们也做了一些工作

觉得freemaker或者velocity做的太死,生成项目的灵活性太差,不能修改后增量生成。


现在考虑emf,gmf之类的东西来做。
1 请登录后投票
   发表时间:2008-07-15  
公开下代码嘛,我想看看从代码上学习学习这个底层的代码生成工具
0 请登录后投票
   发表时间:2008-07-15  
罗嗦的和唐僧一样,有本事就搞一个好的东西出来,
不管是抄袭也好,直接把别人的拿来改个名,还是全部自己开发都好
无所谓,只要能够拥有里面的思想,同时这个思想很伟大,那么都是值得赞赏的

至于唐僧那种嘴里老是去取经,却一直不行动的那种,基本上应该拉出去喂青蛙
0 请登录后投票
   发表时间:2008-10-25  
代码生成在很大程度上还是可以方便我们的。难道反对代码生成的同志们还每次手工去写set/get方法?如果100张表那是多么恐怖的事。
另外可以起到一个团队开发中命名规范等效果,至于业务逻辑当然得手工来弄。
顺便说一下我的代码生成工具:JSmart,是以eclipse插件形式出现的。像常规环境、代码生成都有集成。
地址:http://www.iteye.com/topic/255542
0 请登录后投票
   发表时间:2008-10-26  
个人认为这种生产工具只能起到很小的作用,使用模板技术很容易生成,某些时候还不如动手复制粘贴一下!
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics