您当前位置: 南顺网络>> 官方资讯>> 建站知识

Web表现层开发的思考(二)

三、组件化界面开发 

目前有很多开发框架都突出表现层组件化处理的思想,流行的框架有Tapestry、Turbine、ECHO、JSF等,ECHO、JSF没有深入研究,不敢多说。 

个人比较喜欢Tapestry,本来计划在工作流应用开发框架中,采用Tapestry做为主框架,后来因故没有继续,现在一直很关注这个项目。 

Turbine,03年4月计划对Jetspeed进行改造,做一个支持拖拽、基于Web的门户配置工具,想的比较简单,结果发现这家伙是在Turbine基础之上的应用系统,分析了这两个系统后,还是放弃了原计划,就两个礼拜时间,进度要紧,只是简单的进行了汉化和样式改造,将用户认证部分和公司的产品进行了整合,做完后大家说怎么还不如上个版本的主界面,上个版本是项目组自己用JS和DHTML做的一个组件拖拽的界面配置工具,没有采用portlet标准,而且速度也比较慢,但是很漂亮。这件事让我们对Apache的印象也开始变坏了,呵呵。 


但凡一项技术,如果有好的工具和丰富的资源库支撑,容易上手的话,那么它能很快使用和传播。 

同样基于界面组件开发技术能否成功的关键,是组件库的丰富和设计工具的易用性,如果能有这样的产品出现,Web表现层的开发效率才能真正提高,JSF据说可提供可视化工具支持,而且Apache 的Jakarta项目组已做了很多JSF和Structs的集成工作,暂且看看吧,不知道什么时候能有好用的开发工具面世。 

说起开发工具,让我想起一件事,那是01年的时候,我们承接了一个电子商务网站的开发,当时聘了一个项目经理,据说对Websphere Studio很熟,领导也要求用IBM的Websphere,他给我们演示了一个DB快速开发的例子,和PB的数据窗口类似,后来项目因故无法采用Websphere,这位PM没办法,只能和大家一样,用JSP编,最后的结果是代码质量最差的就是他,惨不忍睹。 

题外话: 
1、Struts 

一直有同事问我:为什么不用Struts做应用开发框架?倒不是说它有什么不好,原因有2条: 


很多地方它已经“陈旧”了,比如Filter和Dispatch,已经在Servlet2.3中形成了标准,成为Servlet容器支持的功能,如果是这样,Struts似乎应该进行修改以适应Servlet标准的变化。 

表现层基于Taglib,延用公司现有的XML和XSL表现层实现方案需要进行改造,据说在和JSF集成,还是等发布了后再说吧。 

现在经常和同事说,Apache的东西和它宣传的不一样,不能都信。Slide说它已经可以对文件进行版本控制,实际上没有实现,全文检索没有采用Lucene,当然它自己也没有实现这个功能,要用它必须自己改造;最可气的是Tomcat,4.0发布时说完全支持Servlet2.3标准,结果按照标准写出来的Filter和Dispatch程序,分开单独运行都正常,合在一起就无效,同样程序放在Weblogic上就没问题,到bug库里一查,还真有这个bug,一直拖了几个月都没有改,傲慢得不行,现在总算是好了,可是害得我们的当初的设计结构要做变更,好端端的程序明明是正确的,却不能用,把人气够呛。 

2、微软和J2EE 

微软做为PC系统软件的霸主,一直想进入由IBM、SUN这些公司把持的企业应用高端。而后者也想抢占PC平台地盘,双方都拿标准来压对方,各自推出的技术有些地方都很有趣。 

编辑:--ns868