技术开发 频道

享受Java,享受程序人生



    傻人的傻福 

    【IT168  专稿】记得华为总裁任正非说过,华为是因为无知才走上通信产业之路的。我在2004年年中开始接触JSF时,也是因为无知。几乎没有Java经验,Web更是一片空白,写了一个半吊子的JSP程序后,我居然判了JSP的死刑,铁下心来钻研我的JSF去了。无知者无畏,说得一点也不错。

    从JSP起步,第二级台阶,也许Struts是最合适的。没有复杂的概念,没有深奥的理论,容易理解,上手快,从JSP向Struts的过渡显得特别自然。这是Struts流行的原因之一。如果当时请教过任何一个Java高手,我十有八九会以Struts作为我的JSP替代技术,并且很有可能成为Struts的发烧友。可是,机缘巧合,我选择了JSF。

    正应了那句俗语:“傻人有傻福。”采用JSF技术后,Web编程如有神助,一个月时间,我和一个刚毕业的程序员写出了一个规模不小的Web程序:126张数据库表,346个JSP页面,458K Java源程序,还包括84页的《需求规格说明书》和189页的《数据库设计说明书》。即便是桌面应用,这样规模的程序在一个月内完成,老板也该偷着笑了。其实,效率的提高,完全是JSF的功劳。正如Sun在JSF的规范中所宣称的那样,JSF极大地简化了Java的 Web编程。

     首先,在JSF中,页面干净了许多。无需声明Javabean,也不用嵌入Scriptlet,没有多余的符号,只是一些扩展标签而已,看上去规范而不失优雅,让人赏心悦目。程序员多半是完美主义者,眼睛里容不得丑陋的代码,我认识的一些程序员,平时不修边幅,可以整个冬天都穿同一件夹克,袖口磨得油光发亮,但他们的程序却整洁得让人嫉妒。

    其次,JSP中趾高气扬的Request和Response对象淡出了JSF。在典型的JSF应用中,程序员基本上没有直接操作Request和Response对象的必要,因为框架隐藏了对这两个对象的处理细节。不论是从Request中解码参数,还是将数据编码到Reponse中,都不需要程序员写任何代码,JSF知道该怎么做。当然,如果非要访问Request,JSF的隐含对象为程序员提供了可能。
0
相关文章