﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-java快速开发 j2ee代码生成-随笔分类-java生产力</title><link>http://www.blogjava.net/wizwork/category/33074.html</link><description>专注java生产力</description><language>zh-cn</language><lastBuildDate>Thu, 17 Jul 2008 14:33:04 GMT</lastBuildDate><pubDate>Thu, 17 Jul 2008 14:33:04 GMT</pubDate><ttl>60</ttl><item><title>解放程序员，提高生产力</title><link>http://www.blogjava.net/wizwork/archive/2008/07/17/215583.html</link><dc:creator>wizwork</dc:creator><author>wizwork</author><pubDate>Thu, 17 Jul 2008 13:22:00 GMT</pubDate><guid>http://www.blogjava.net/wizwork/archive/2008/07/17/215583.html</guid><wfw:comment>http://www.blogjava.net/wizwork/comments/215583.html</wfw:comment><comments>http://www.blogjava.net/wizwork/archive/2008/07/17/215583.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/wizwork/comments/commentRss/215583.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wizwork/services/trackbacks/215583.html</trackback:ping><description><![CDATA[&nbsp;在java的世界里，有着太多太丰富的东西：开发框架，控件，高效率的ide，代码生成器等等，它们所要解决的问题其实都是提高生产力，应对多变的开发需求。效果怎么样呢，我们不妨来看一看。 <br />
<br />
一、开发框架。 <br />
一谈到java的框架，每个java程序员都可以说出一大堆，web层有struts，webwork(struts2)，tapestry，还有实现jsf标准的...，数据库层有hibernate，ibatis。 <br />
还有一个spring也风靡java世界。但是每个程序员所钟爱的框架又不一而同，为什么呢，其实是每个框架侧重面不同，而程序员所要做的开发的要求又变化多端，框架不能满足，所以会有这样那样的抱怨。 <br />
框架解决了部分开发中的部分问题，但解决的不太全面，比如说我们的大多数开发的主要工作集中在添加、删除、修改、查询等类似的功能上，当然页面可能复杂，可能简单。框架没能解决这类问题。它们解决了类似数据提交、转向、校验、数据存储，查询、ioc，但它们解决的问题是分散的（当然也提供了灵活性），没有整体的打包式的解决方案，我们许多程序员需要在这上面花费很多时间，也有一部分聪明的程序员会通过复制粘贴提高一下生产力，:-) <br />
还有一部分高级的，抽象一下搞个简单的&#8220;二级框架&#8221;。 <br />
总起来说，框架提高生产力的效果还没有非常理想。 <br />
<br />
二、控件 <br />
还有一部分人在努力想办法解决这个问题，他们提出的方案是控件。控件有着明显的优势：封装。程序员只要按照api说明进行调用就行了，easy！但是好多问题也出在封装上面，空间的开发者虽然想近办法让控件可以应付各种需求，但是仍然做不到完美。当需要修改控件才能符合开发要求时，相信每个程序员都会头大，搞不好还有版权，你不能改！ <br />
所以控件可以提高部分开发生产力，但解决的也不是非产完美。 <br />
<br />
三、ide开发工具 <br />
开发工具确实帮了我们不少忙，但主要还是集中在代码编辑上面，如setter，getter，重构，还有一部分ide插件可以生成部分代码，很舒服:-)。 <br />
在提高生产里方面，ide功不可没。估计现在还在用记事本编写java代码，用commond敲javac编译，java运行的程序员应该不多见了吧。 <br />
<br />
四、代码生成器 <br />
既然上面三种方式都有局限性，不如把它们整合一下，在框架的基础上，开发出优良的通用的代码，然后再将它们分割划分为&#8220;控件&#8221;，让程序员通过建模像搭配积木似的建立软件的模型，最后生成模型的代码实现。这种方式怎么样呢？因为是生成的代码，程序员有什么不满意的可以去修改生成的代码，不再为修改&#8220;控件&#8221;而苦恼，代码是基于大家熟悉的框架之上的，每个程序员很熟悉，上手很快。令人苦恼的重复的开发过程：jsp-&gt;form-&gt;vo-&gt;po -&gt;dao-&gt;dao impl-&gt;service-&gt;service impl还有一大堆配置文件，都通过代码生成器生成了，我们程序员这时候可以将精力放在业务逻辑上面，放在如何优化算法等比较有&#8220;意思&#8221;的部分上了。 <br />
会有部分程序员抵触代码生成器，就如同当年的工业革命时期，手工转向机器一样。其实，我们的软件开发的很多领域正像手工劳动一样，是可以通过代码生成器这种机器提高生产力，那我们为什么不试一试呢？
 <img src ="http://www.blogjava.net/wizwork/aggbug/215583.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wizwork/" target="_blank">wizwork</a> 2008-07-17 21:22 <a href="http://www.blogjava.net/wizwork/archive/2008/07/17/215583.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>