论坛首页 Java企业应用论坛

是动态组件还是代码生成?

浏览 2349 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-06-18   最后修改:2009-10-29
目前主流的SSH开发架构中,为减轻开发者工作,便于管理开发过程,往往用到一些公共代码和组件,或者采用了基于模版的代码生成机制,对于后台的DAO,Service等因为架构决定,代码生成必不可少,但是在前端页面的实现上,却可以有两种不同的思路,一种是把配置信息直接封装成更高级别的组建,一种是进行代码生成。请大家讨论一下这两种方案的优劣,这里先抛砖引玉了。

相同点:
配置信息:XML OR 数据库

控件化:
优点:
1 易于添加公共功能
2 修改配置数据直接生效
3 代码结构清晰,对开发者友好
缺点:
1 重组内存中对象结构,性能没有代码生成好(但渲染时间相同)
2 仅能控制组件自身封装的配置,不支持个性化修改,如果配置文件不支持的参数,则控件不支持
3 必须保证每个控件一个配置

代码生成:
优点:
1 性能较好
2 易于定制内容
3 可以只配置一个模版,然后做出多个简单的修改
缺点:
1 不能针对多个页面同时添加公共功能
2 业务修改需要重新生成代码
3 开发者需要修改自动生成的代码,并需要了解一些底层的实现结构

=====================20091029
代码生成并不能提高工作效率,尤其是针对复杂的富客户端开发
开发组件可提提供一种有效的选项,但是在运行效率和内存处理上需要细心处理
   发表时间:2009-06-18  
  基于组件开发的话 不如直接上 jsf   tapstry  or Wicket。 本身就自带了很多组件。 满足了你些许的需求。 但是应该还需要你开发许多。

  说实话我一直对autoCode很反感。 霰弹式修改的根源。 跟copy paste 没啥区别。

 


  以上纯属乱弹。谢绝跨村追捕。。
0 请登录后投票
   发表时间:2009-06-18  
Saito 写道
  基于组件开发的话 不如直接上 jsf   tapstry  or Wicket。 本身就自带了很多组件。 满足了你些许的需求。 但是应该还需要你开发许多。

  说实话我一直对autoCode很反感。 霰弹式修改的根源。 跟copy paste 没啥区别。

 


  以上纯属乱弹。谢绝跨村追捕。。

我们用的是Extjs,现在的问题是直接生成ext的代码还是编写更高级别的ext组件
0 请登录后投票
   发表时间:2009-06-18  
我觉得封装EXT比较好
0 请登录后投票
   发表时间:2009-06-18  
个人感觉,如果能通过共通和框架代码实现,最好不要用代码生成。自动生成的代码难以修改和维护。
0 请登录后投票
论坛首页 Java企业应用版

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