Ajax到底有多大力量

来源:百度文库 编辑:神马文学网 时间:2024/04/27 16:34:44

Ajax到底有多大力量


本文章摘自于2006年5月8日的电脑报
 
近两年web2.0正成为网络用户关注的焦点,而Ajax这个名字也被频繁的与web2.0一并谈论,不过一个令人有些费解的现象是,并不是所有的用户都能清楚的说出Ajax到底是什么。大家对web2.0本身也是众说纷纭,很难下一个准确的定义,我觉得在这方面到颇有异曲同工之处。
这个现象确实有一定的普遍性,原因也是多方面的。最重要的原因在于大家往往只从技术的角度来解释Ajax,而事实上Ajax并不是一个单一的技术概念。在技术范畴之外,Ajax还包含了很多web用户体验方面的元素,这也是为什么舆论普遍认为Ajax是一种web2.0技术的原因。毕竟web2.0的创新价值有很大一部分来自于对用户体验和用户作用的重视。
 
以管窥豹的方式确实在Ajax的认识上造成了不少误解,这可能就是那些以"新技术"的角度了解Ajax的用`户不得门径的原因吧。
应该说Ajax首先就不是一项纯粹的技术,而更近似于一个技术框架。同时Ajax体系当中也并没有什么新的技术元素,其核心是Javascript技术,一种以往被认为与企业应用绝缘而只适用于在客户端展示一些"小把戏"的编程语言,而XML,XHTML,DOM,XML-HTTPREQUEST,CSS等经常被用于实现Ajax的技术元素也是多年应用的成熟技术。
 
 不过就是这些常用技术的创造性组合为我们带来了令人叹服的用户体验,可见模式的创新是多么具有冲击力。
Ajax彻底颠覆了传统web应用在用户交互方面的模式,这是不可否认的。在传统的web体验当中,用户已经习惯了,在请求服务器数据之后的等待和显示这些数据时的页面刷新,这种交互方式是低效和不连贯的。
 
Ajax所倡导的方式则能够大大优化用户的使用感受。由于在服务器和浏览器之间的数据传递交由JavaScript控制,开发人员得以跳出以往严格的请求应答模式从而构建更具有用户友好性的web应用。
 
举一个简单的例子,当用户请求新的数据内容时,传统的web机制只能等待服务器将全部数据返回,然后刷新并重新显示整个页面;而Ajax只请求那些需要改变的内容,同时只改变那些需要改变的区域,而并不对这个页面进行刷新,这种能力不但使刷新成了Ajax带给用户的最主要印象,而且由于数据传递量的有效降低使得Ajax成为缓解web性能瓶颈的重要武器。
 
从这个角度来看,Ajax确实称得上是web2.0技术的典型代表,这不禁让我想起了windows图形操作系统替代DOS操作系统的过程。除了在用户接口上展现出更大的吸引力之外,系统核心的变革也在发生重要的作用。
窗口操作系统在外观和使用上确实带来了巨大变革,但是用户体验的巨大提升与内在功能的支持是分不开的,Ajax之于web2.0也是如此。
 
回顾windows的替代,Ajax正在经历同样的过程。除了在用户接口上展示更大的吸引力之外,Ajax第一次使web用户接口实现了多任务。由于页面可以不需要全部刷新,在一个区域正在等待数据返回并改变自己外观的时间里,用户则可以不必等待而继续执行其他操作;相应的,用户向服务器提交数据也不必等待数据被全部传送到服务器再进行其他操作。
也就是说,用户与浏览器的操作交互,浏览器与服务器的数据交互是可以"异步"进行的,这也是Ajax这个名字的由来,Ajax的英文全称是Asynchronous Javascript and XML 。
 
Ajax对用户群体的号召力已经获得了很多证明,应用随需求而动,Ajax也正成为开发群体新的追逐目标了,相信在web开发领域一定会掀起不小的波澜。但是很多人有一个疑问,Ajax是否已经给人们展示了一条康庄大道呢?按照IT界的发展规律来看,至少目前还没有出现过完美的技术。
 究其本质来看,Ajax对于传统开发阵营来讲并不是一种颠覆性的冲击,而更贴近于一种增强。基于web应用体验的改善以及为交互方式提供的更多的可能性,会有越来越多的web应用程序采用Ajax机制实现。

目前已经涌现出大量成熟的Ajax应用,这些具体的应用或者自成体系的开发框架,或者是与各种编程语言的接合,事实上Java ,PHP,ASP等主流web开发平台已经都可以与Ajax框架进行良好的挂接。
话说回来,无论是Ajax的模式还是所依托的具体技术在很多年前就已经出现了,之所以到今天才获得应用和认同,说明再先进的东西也只有在被需要的情况下才能得到真正的发展。
但是,目前Ajax还处于前景与风险并存的阶段。虽然在应用领域Ajax已经取得了一定的进展,并且在用户认知度和影响力上也具有了相当的积累,但是其发展道路仍不能说一马平川。
 
 Ajax并不是一支独秀,包括windows-media的flex等很多技术体系都在尝试提供更强的用户体验,随着web异步交互的需求成长,会有越来越多的技术涌现出来。而目前Ajax的实现也是多种多样的,不能尽早的形成标准无疑将分散Ajax的发展力量。
另外,不但用户群体中存在着对Ajax的认识模糊,即使是专业的开发人员,对Ajax的理解也千差万别。很多开发人员将Ajax视为一支不折不扣的潜力股,软件开发领域的下一个JAVA,这些都过分强调了Ajax在在市场效应方面的作用,反而在一定程度上扼杀了Ajax的真正价值。与其进行浮躁的期待和冲动的吹捧,不如切实地学习和发挥Ajax在用户交互方面地优点。