Ajax兴起, 传统Web框架与狼共舞


关于J2EE的开发框架可谓是百花齐放,从JSF、Tapestry到Struts、WebWork,又有从Spring WebFlow到JSP/JSTL/Velocity等等。而且几乎每天都有新框架诞生。然而,面对Ajax或是其它类似Ajax客户端技术的兴起,是不是会意味着传统基于HTML/HTTP的Web框架将会前途渺茫?

  一、 传统Web遭遇AJAX,是融合还是消亡

  传统的Web框架主要负责处理HTTP请求及生成HTML页面,在服务器保证客户端的正常显示,主要通过处理表单,绑定业务数据对象等并返回给客户端的HTML页面。

  而Ajax,通过采用模块引擎、XPath/XSLT引擎、SOAP协议及XFroms等技术来实现,充分的在客户端发挥不可替代的作用。因而,开发人员可以尽量将JavaScript从HTML页面里分离出来,尽量采用CSS来减少JavaScript脚本语言在客户端的大量使用。从而基于Ruby on Rails框架的JavaScript版本,可以稳定的应用运行于浏览器上。

  未来的Web应用程序会不会是基于静态的HTML和使用Ajax采用XML提供的web services?如果是的话,那么我们还需要基于HTTP/HTML的传统Web框架吗?或是完全采用Ajax来取代Web框架以实现查看、编辑等功能?

  就作者的个人经验而言,如果非免费的话,可以肯定的是Ajax将成为Web框架收费的一个新增点。但是作者对Ajax将取代Web框架的结论表示怀疑的态度。有太多的公司不愿意开发一个仅仅基于JavaScript的UI(用户界面),Google也不例外,因为,当浏览器的JavaScript功能被禁用时,GMail还有一个非JavaScript的版本可以正常运行。

  然而使用了Ajax,以前使用Web框架所存在问题是否依然存在呢?同时,哪一个Ajax框架最适合?DWR、Scriptaculous、Prototype?还是AjaxTags、AjaxAnyWhere、Rico?更或者是Dojo、JSON-RPC?但当他们中的某一个框架被Apache组织所收购,那会不会意味着它将成为又一个Struts呢?

  这也就是说,作者更加倾向于将Ajax与传统Web框架两者进行无缝的集成使用。Ajax的强项与优势在于它在客户端”view”方面的良好表现,同时可以对客户端的请求按需进行业务数据的请求。而Web框架在这个方面是弱项,但在其它方面如服务器则是强项。在特大型项目中,如果不采用基于MVC原则的Web框架来形成程序的结构,则Ajax将会显得力不从心

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3