`
ah_fu
  • 浏览: 223791 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论
阅读更多

    偶然的一天,我问我的同事:知道AJAX吗?
    他茫然了一会,然后开始侃侃而谈该球队的明星。
    现在轮到我茫然了。

    作为一个非WEB程序员,他不知道AJAX就是Asynchronous JavaScript And Xml 的简写;作为球盲的我,不知道AJAX原来是球队的名称。不过由此推断了一件事情:发明WEB上的AJAX这个名词的作者是AJAX球队的球迷。

    先不说太多专业的名词,AJAX,对于一个普通的网站访客来说,意味着什么?很简单,AKAX达到的效果就是“不刷新页面更新数据”,由此带来更好的用户体验和更快的速度。
    很多人说AJAX技术的核心是XmlHttpRequest。我却不同意这个观点,纵观AJAX涉及到的技术,XmlHttpRequest和XML都不是必须的,只有JAVASCRIPT是必须的。
    首先说XmlHttpRequest,最初,这是一个微软程序员无心插柳的开发的一个ActiveX控件。这个控件能够向WEB发出GET或POST请求,从而获得数据。在以前的版本中,所请求的页面可以不在一个域中,也就是说:一个在sina上的页面可以请求sohu上的数据。后来处于安全性考虑,这个功能被取消了。我们完全可以使用IFRAME或者FRAME来代替XmlHttpRequest请求数据,任何一个熟练的脚本程序员都可以做到这一点。
    其次来说XML,XML可以说是一种数据的容器,是一种通用的标准。其实,数据只要从服务器端发送到客户端并最终呈现给用户就行了,用不用XML都没关系,最简单的是:接收服务器端返回的HTML代码,直接把代码插入(DOMObj.innerHTML=HTML字符串)到相应的位置就可以了;或者是返回特殊格式的字符串,自己写个JavaScript来解析成数据;活着返回JavaScript的代码本身,动态执行这段代码…………

    现在的AJAX虽然很火,但是流行的不代表就是有着长远生命力的,一个新鲜的名词把一些已有的技术整合起来,确实是没什么大不了的事情。个人觉得AJAX不应该只是一种概念,更多的是一种规范,如同WEB标准那样。AJAX特别需要两个标准:
    一是JAVASCRIPT的编码标准:如何编写风格良好的可重用的JAVASCRIPT代码,并定制JS的类标准、库标准,甚至开发工具的标准。一旦一个良好的库和工具产生,AJAX必然有着更强盛的生命力。
    二是数据源的标准。就是AJAX中的XML这个环节,XML实际上对于客户端来说仅仅指示提供了一个数据源,然而任何人都可以根据自己的偏好定义数据源:可以是HTML代码,可以是普通字符串可以是JS代码本身…………就算使用XML,大家也可以定义任意格式的XML。我觉得,对于数据源的选择这个问题来说,应该使用WEB SERVICES作为AJAX的数据源而不仅仅指示用XML来概括之。WEB SERVICES毕竟是一种通用的标准,AJAX立于WEB SERVICES之上,才能更加广泛地被使用。

    AJAX现在很火,火的只是概念,它仍未被大规模的使用起来,原因是它还缺少一些必要的支持,首先还是上文提到的标准,其次是库,再次是一个AJAX的集成开发环境(IDE)。
    关于标准和库的问题,现在已经有很多开源的AJAX框架提供了基于自己框架的标准和库,随着他们的发展,相信其中一个英雄会“统一天下”(千万不要是微软啊!)。此外是IDE的问题:JAVASCRIPT完全可以面向对象的进行开发,完全可以象.NET开发WINFORM那样简单方便,关键在于缺乏工具的支持。微软完全可以做出这样的工具来集成在VS里面,可惜他为了把程序员捆绑在他自己的平台上,竟然采用了WEB控件这样的垃圾,可悲!相信某天Eclipse会带给我们这个惊喜。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics