曾经听人说过,时尚这个东西是不断的轮回的,三十年河东三十年河西。一个几年甚至几十年前的时尚标志,在几年或几十年后就会重新出现,并搭配上新时代的概念以及标志,从而成为新的时尚。当然,不过人家的专业术语称为——复古。
技术现在也搭上了复古风。双路/多路CPU现在已经/将要成为双内核/多内核CPU,微软曾经的维纳斯计划将搭上中国的IPTV快车,以及富客户端和智能客户端将成为新的C/S模式的代言技术。当然,这股复古风里少不了Ajax。
Ajax是今天技术时尚界的新星,最初由Google进行了包装,并向世界展示。Ajax是由Javascript + XmlHttpRequest + Xml组合而成,加上OO Javascript 的技术,以及Ajax的新名字,荣登为2005年上半年最具影响力的技术。
Ajax的全名是:Asynchronous JavaScript and XML ,中文名是:异步的javascript和XML处理。Ajax通过调用XmlHttpRequest实现与服务器的异步通讯,并使用对应平台的XmlDom对返回的Xml消息进行处理,然后再通过DOM对页面中的HTML元素的操作实现丰富的、友好的用户界面。
说到XmlHttpRequest,加上本文的主题,不得不提到一个曾经在技术时尚舞台的露过面,却又很快被众多明星的光芒掩盖的一个曾经的新人:Microsoft Remote Scripting
这位新人在ASP时代曾经出现过,但很快就被JSP这个超级巨星掩盖了。仔细的追究起来,Microsoft Remote Scripting 与Ajax几乎如出一则。都是使用了XmlHttpRequest。我曾经在我的毕业设计和一个项目中与它合作过。分别实现客户端的无刷新提交以及异构网站的简单的SSO。因此当我看到Ajax的熟悉的面容与身影,让我想起了它。
尽管 Microsoft Remote Scripting 早于Ajax出现,但是由于当时服务器端技术风靡,而一次部署到处运行(只要有浏览器就行)的口号声一浪高过一浪,使得人们忽略了用户交互。而为了提高用户体验的Microsoft Remote Scripting 也就没有得到过多的关注。
而如今,在服务器端技术已近成熟时,提高用户体验又被提到了日程上。Javascript + XmlHttpRequest + Xml在此时被重新包装成为Ajax,并被追捧无疑是必然的。
Ajax 的重点在 A 而并非 J与X。单独有J和X并不能让Ajax如此受人瞩目。Ajax 的 A 旨在用异步的Http Request操作替换当前的通用采用刷新的方式获取数据和保持HTTP状态的操作。因此 Ajax 使用 XmlHttpRequest 这个工具,代替浏览器向服务器发出get/Post请求,然后从服务器取回必要的数据。同时,为了能够方便、准确地解析和使用返回的数据,XML这个可扩展的标记语言就发挥了不可替代的作用。为了能解析返回的XML,Xslt又无可置疑的担当了重任,因此Google为Ajax增加了新的成员:goog-ajaxslt
由此可见,Ajax 是一个组合,一个全明星队。这样的全明星队,加上Google的代理,能不风靡全球吗?
但是,尽管 Ajax 看起来与众不同,但是它在还是没有脱离传统的 HTTP 模式。它只是让用户看起来与传统的方式不同而已。同时,Ajax 如前所述,并非新技术,也并非新的模式。它只是一种途径,一种提高B/S模式下的软件的用户体验的途径。所以,如果那它和Flash, Flex,SmartClient等明星相比,在技术上没有任何比较性,而只能说,他们都在提高用户体验上提出了一种途径。只不过,Ajax是在现有的技术上创建途径,而其他的则是完全开辟了新的途径。
回过头来,时尚这个东西很容易过时的,但是又会重新卷土重来。用阿诺的一句话说就是:I will be back。加上一句:with differece face。至于返回的时尚是好是坏,由市场来决定。