|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在实现ERP等高端的ASP应用时,用户需要提供核心的经营资料,需要ASP商有很高的信用度。楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。web 本文的内容来自各类渠道,有伴侣非正式的会商与邮件来往,也有收集上的各类材料,另有开辟者们口耳相传的理论履历。为了便利读者,我不揣唐突将它们收拾成对话的情势,并借了两个假造人物(WebWork的喜好者Weber和Struts的老用户Steven)之口来对照这两种盛行的web框架,但愿对读者的选择有所匡助。
Steven:嘿,Weber,你比来忙甚么呢?
Weber:哦,我刚做了一个项目,用WebWork做的,感到挺好。
Steven:WebWork吗?我晓得它,它有甚么好的?
Weber:优点可多了,比Struts强太多了。你用Struts那末久,岂非就不以为有甚么不恬逸的吗?
Steven:恩……的确有一些。好比说,Struts的ActionForm实在不太好用,有点不三不四的,平白的在action和view之间引进了贫苦。Struts比来的计划也渐渐在淡化ActionForm的感化了。
Weber:是呀。并且Struts的不爽的中央另有接口对照丢脸。action必需要完成承继,到如今也没有改成接口承继。并且execute办法的接口也满是HttpServlet...,不克不及离开servletcontainer,要测试还得供应mock的request,真是贫苦。
Steven:Struts因为要重用action的实例,因而不能不把一切形态从action里剔除,从而必要每次都传进request/response,这是一个典范的无形态计划,为pool和负载作了筹办,实际上讲功能的延展性要更好一些。Struts因为每次都要处置request/response,以是必需供应一些工具办法,因而Action不再是接口,而改成一个class,这个计划在ood里也是经常使用的伎俩。假如没有这些接口,又怎样在servlet和action之间传送数据呢?
Weber:这就是WebWork的计划出色的地方了。action都是一般的JavaBean,它们只完成本人的营业功效,其他基本举措措施级的功效――比方怎样与servlet互换数据――都是用拦阻器来完成的。恰是由于有这个拦阻器机制,以是WebWork才这么好用呢。
Steven:不外我看WebWork供应的功效仍是对照少,好比它本人就没无数据校验的才能,必需要用其余工具来匡助校验。
Weber:没错,但这类功效都能够用拦阻器机制来做,你能够把这些拦阻器笼统出来复用。以是WebWork自己不必要包括那末完全的功效,它只供应了一个天真的中心,良多功效都能够做成插件插出来。而Struts就对照贫苦了,新加一个功效就会伤筋动骨,以是Struts总是有良多新特征要公布呢。
Steven:是的。比来Struts又放出动静,将来的版本将增添对JSR-168portlet的撑持。
Weber:这个成绩在WebWork里基本就不成成绩。只需做一个portlet作为引擎,再修正几个设置,一切的WebWorkaction都能够一成不变地移植到portlet情况,由于它们底本就是最一般的JavaBean,基本就不晓得表面的情况事实是servlet情况仍是portlet情况。因为action不依附详细的运转情况,以是单位测试也很便利,间接把actionnew出来,把参数设置出来就能够测试了。
Steven:提及测试嘛,抛开先富起来的区域不说,最少中国另有1/3的软件企业处在对TDD懵懂的阶段吧?另有1/3的企业在追捧CMM和一些瀑布模子的开辟办法吧?那末关于这些企业,Struts和WebWork在易测上的差别他们是感觉不到的。以后的形态下,易测性并非软件企业手艺选型的一个重点方针,那末Struts就有了其保存的泥土。固然这就扯得有点远了。
Weber:你说得很有事理。Struts幸亏够多的人撑持、利用,让人以为够不乱、保险、有保证。如果做个项目,良多老板必定说,我要的不是新手艺,要的是不乱。以是我如今也还经常在用Struts开辟项目。
Steven:看来我也应当多懂得一下WebWork。假如今后接纳TDD的开辟办法,可测性切实其实是很主要的要素,当时大概我就会选择用WebWork了。
Weber:另有一种折衷的举措,就是改革Struts,给它加上拦阻器机制,然后再用拦阻器来完成DependencyInjection,如许能够把Struts变得跟WebWork一样易用,并且又不会丧失它本来的功效,完成起来也不算庞大。
Steven:的确不错。这么一来,我的工具箱里又多了一种可选的计划了。
附录:关于Struts与WebWork之间的手艺对照,请看以下两个地点:http://udoo.51.net/mt/archives/000044.html,http://wiki.opensymphony.com/display/WW/Comparison+to+Struts
因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。还无法完全实现一些企业级的功能:完全的集群、负载均横。 |
|