"Is Ajax gonna kill the web frameworks?"是我最近看到的最近的一篇blog,在TheServerSide这个超级口水潭上面引起了激烈的争论,我也觉得可以趁机写写自己的一些看法。
 
最早正式提出Ajax这个概念的应该是Adaptive Path的这篇文章,从文中我们可以知道Ajax不是一种新技术,实际上它不是一种技术,而是几种技术的合称,在这几种技术中我认为最为关键的是:
1. XmlHttpRequest:能够以异步的方式从服务端获取数据,对用户透明,终于摆脱了“页面跳转、每次刷新”的交互方式!
2. DOM:动态地更改显示,例如根据获取的数据更改某个TextBox的内容。
 
通过采用Ajax,Web应用可以表现得类似普通的桌面应用,对最终用户的体验来说应该是一种回归。我猜想作为非IT行业的最终用户来说,可能会认为——“应用界面本来就是这样的,以前用Windows程序不都如此吗,只是你们弄出什么Web应用后才把界面搞得如此繁琐”!
 
实际上能够实现上述效果的技术还有不少,老早就出现的Java Applet就是,还有XUL、Flex、MS XAML等等,在Weighing the alternatives这篇文章对这些技术进行了比较,认为Ajax胜出。
 
Ajax改变了人们对Web应用的认识,特别是在Google一系列应用GmailGoogle Maps推出后,Web应用几乎“言必称Ajax”,现在甚至提出“Is Ajax gonna kill the web frameworks?”这样的问题!
 
现阶段来说,这个问题的答案当然是“NO”。
 
实际上Ajax只是几种基础技术的集合,并不会自然而然地成为一个客户端的开发平台,还需要在Ajax的基础上解决不少问题。 
只要在google搜索,就能找到大量着眼于改进Ajax的项目,从反面来说每个项目都是在针对Ajax所存在的缺陷进行改进。这个国人创建的项目ESS Framework演讲稿就提到不少JavaScript的问题,值得看看。而且像自动测试困难这些问题不是修修补补能够解决的,现在Ajax和开发社区正处于蜜月期,等蜜月期过去估计怨言就出来了。像EJB这样的技术也是因为测试困难等问题就被骂的狗血喷头。
 
目前来说,可靠的方式是将Ajax和某个Web Framework结合使用,Web Framework负责主要部分,Ajax只是负责改善界面体验。更进一步,可能将Ajax纳入某个Web Framework——例如JSF这样基于组件的技术,将组件的展现用Ajax技术实现,这样开发人员只是面对组建编程,无需了解具体的Ajax技术。
 
但是以后,随着技术的发展,我相信总会有Web界面技术(Ajax或者别的Web客户端技术)能够达到类似Delphi、VB这样的水平,那么Web Framework的确就该退出舞台。杞人忧天一下,那时候也许我们所关心的估计有:
1、客户端与服务端的对象远程传输和映射问题
2、业务逻辑在客户端和服务端的分工问题


Trackback: http://tb.donews.net/TrackBack.aspx?PostId=638784

::...
免责声明:
当前网页内容, 由 大妈 ZoomQuiet 使用工具: ScrapBook :: Firefox Extension 人工从互联网中收集并分享;
内容版权归原作者所有;
本人对内容的有效性/合法性不承担任何强制性责任.
若有不妥, 欢迎评注提醒:

或是邮件反馈可也:
askdama[AT]googlegroups.com


点击注册~> 获得 100$ 体验券: DigitalOcean Referral Badge

订阅 substack 体验古早写作:


关注公众号, 持续获得相关各种嗯哼:
zoomquiet


自怼圈/年度番新

DU22.4
关于 ~ DebugUself with DAMA ;-)
粤ICP备18025058号-1
公安备案号: 44049002000656 ...::