建立Web应用的一个新途径
发布时间:2007-03-28 15:44:00
如果要问做什么事是最有吸引力,那就是创建Web应用。毕竟,上次你听到有人称赞某产品的交互设计是什么时候的事了?(除了iPod之外) 它们都很cool, 而且都是很创新的项目。
抛开这些不管,Web设计者们对设计交互式的Web没有什么更好的办法,却对我们做桌面软件的同事投去少许羡慕的目光.桌面应用程序有丰富的界面以及对于Web程序来说无法比拟的响应能力。同样,Web的快速发展,在我们所提供的体验和用户从桌面应用程序所得到的体验间产生巨大的差距
而如今差距正在消失。请看看“Google建议(Google Suggest)”. 观察它按你的输入显示建议条目的更新速度,几乎是立即更新的。再看看"Google Maps". 放大,用你的鼠标搬动和滚动。这些动作几乎是立即响应的,不用等待页面刷新。
"Google Suggest"和"Google Maps" 是采用Ajax技术的两个典型例子。Ajax是Asynchronous JavaScript and XML的简称,它表现出一个Web开发上的根本转变,那就是,Web上可能做些什么. Ajax的定义
Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。Ajax包括:
XHTML和CSS
使用文档对象模型(Document Object Model)作动态显示和交互
使用XML和XSLT做数据交互和操作
使用XMLHttpRequest进行异步数据接收
使用JavaScript将它们绑定在一起
传统的web应用模型工作起来就象这样:大部分界面上的用户动作触发一个连接到Web服务器的HTTP请求。服务器完成一些处理---接收数据,处理计算,再访问其它的数据库系统,最后返回一个HTML页面到客户端。这是一个老套的模式,自采用超文本作为web使用以来,一直都这样用, 但看过《The Elements of User Experience》的读者一定知道,是什么限制了Web界面没有桌面软件那么好用。
图1: 传统Web应用模型(左)与Ajax模型的比较(右).
这种旧的途径让我们认识到了许多技术,但它不会产生很好的用户体验。当服务器正在处理自己的事情的时候,用户在做什么?没错,等待。每一个动作,用户都要等待。
很明显,如果我们按桌面程序的思维设计Web应用,我们不愿意让用户总是等待。当界面加载后,为什么还要让用户每次再花一半的时间从服务取数据?实际上,为什么老是让用户看到程序去服务器取数据呢? Ajax如何不同凡响
通过在用户和服务器之间引入一个Ajax引擎,可以消除Web的开始-停止-开始-停止这样的交互过程. 它就像增加了一层机制到程序中,使它响应更灵敏,而它的确做到了这一点。
不像加载一个页面一样,在会话的开始,浏览器加载了一个Ajax引擎---采用JavaScript编写并且通常在一个隐藏frame中。这个引擎负责绘制用户界面以及与服务器端通讯。Ajax引擎允许用异步的方式实现用户与程序的交互--不用等待服务器的通讯。所以用户再不不用打开一个空白窗口,看到等待光标不断的转,等待服务器完成后再响应。
图 2: 传统Web应用的同步交互过程(上)和Ajax应用的异步交互过程的比较(下).
通常要产生一个HTTP请求的用户动作现在通过JavaScript调用Ajax引擎来代替. 任何用户动作的响应不再要求直接传到服务器---例如简单的数据校验,内存中的数据编辑,甚至一些页面导航---引擎自己就可以处理它. 如果引擎需要从服务器取数据来响应用户动作---假设它提交需要处理的数据,载入另外的界面代码,或者接收新的数据---引擎让这些工作异步进行,通常使用XML, 不用再担误用户界面的交互。 谁在使用Ajax
在采用Ajax的开发上面,Google做了巨大的投资。去年Google所有主要的产品都用了这项技术---Orkut, Gmail, 以及最近的beta版的Google Groups, Google Suggest和Google Maps---它们全是Ajax的应用。(要想了解更多这些Ajax实际的技术细节,请看它们的分析文章:Gmail, Google Suggest, Google Maps). 其它的像:Flickr, 采用许多人们喜欢的Ajax特性,还有Amazon的A9.com搜索引擎也采用类似的技术。
这些项目证明了Ajax不只是学术上的,也有许多真实世界成功应用。这不是什么实验室里的技术。Ajax的应用可大可小,从非常简单的,像单一功能的Google Suggest到非常复杂的Google Maps.


猜你喜欢
- 在博客上与朋友分享心情和梦想已是很多现代人生活的重要部分。而现在,“迷你博客”服务使人们不用电脑也能发布博文。人们可以用手机随时随地记录生活
- 昨天,我们已经知道了在DedeCMS中,对标题,描述标签的写法,现在,我们应该说说在DedeCMS中,如何做到对内容进行SEO了。如果没有看
- 发布商都很关注收入的波动问题,今天我们就帮大家深入分析一下如何知道收入波动的背后原因,并采取相应的措施。首先,大家都知道,AdSense 收
- 解决方法:(1)为你的数据库文件名称起个复杂的非常规的名字,并把他放在几层目录下。所谓“非常规”,打
- 10月21日早间消息(常山)美国芯片公司Marvell推出ARMADA系列应用处理器。该系列产品专为新一代ARM指令集智能手机、智能本、消费
- 网站要进行优化的原因网站建设好了,如果不去做优化,那就没有排名,没有排名,人家就看不到你网站的存在,那么建设了网站,如果没有网站优化就等于没
- 如果你已经是 Google AdSense 内容发布商,如果希望自己的网站获得更高的收入,非常有必要深入了解 Google 的优化建议。在
- 芯片商的用户争夺战升级昨天,电脑芯片商AMD公司在京正式发布VISION技术,其中文名称为“视·觉
- 几年前站长做网站的时候只需要考虑Woindows和IE 5.0,网页的分辨率大多是800*600和1024*768,所以对于网站设计来说相对
- 快播的出现,已经成为互联网在线点播的一种新的标准。在网络视频点播日渐强大的今天,快播以其高清晰的点播资源,流畅的播放速度,赢得了众多影视发烧
- 对你的数据进行备份是至关重要的,但是如果你不知道如何恢复这些数据,那些备份对你来说根本没有用处。这里是一个用微软系统中心数据保护管理器(DP
- 至今国内采用UCenter Home搭建的地方及垂直SNS已经超过13万家。在UCenter Home中,默认情况下新用户注册完成后会自动跳
- 最近因为比较清闲,不断有朋友问关于网站制作、运营和推广方面的问题,基本上所有人都有一个很兴奋的表情,大谈他们关于想做的网站的内容,绝大多数人
- 本人文采不好,才小学文化,接触做网站已经快两个年头了,曾经也算月收入过万,现在ADS联盟在国内已经快不行了 所以收入也就上班族那么点了。写的
- 不少Web服务器都是架设在Windows 2003服务器系统环境中的,但是在默认状态下该服务器系统存在不少安全漏洞,许多黑客或者非法攻击者往
- 谷歌退出中国内地事件,远远没有画上句号,中国的搜索引擎市场正在掀起惊涛骇浪。虽然说谷歌只是退出内地,但对谷歌搜索还是影响很大。很多网民反映使
- 如何配置ASP运行环境 1.如果您的操作系统为Windows 98,请运行 Windows98的安装光盘。在其Add-ons\pws目录下找
- 前段时间,公司一个主要的网站数据库中个别表的数据经常被修改并挂马,由于网站是以前别人做的,代码有点乱,所以只看了与这几个表相关的文件代码。原
- Godaddy主机提供的三款主机方案都支持域名绑定,但三款域名的域名的绑定个数是不同的,Economy Plan主机支持多域名绑到同一目录(
- 本文介绍了提升网站利润,宣传网站的一些方法,当然并不一定适用所有网站。 1、用活生生的标语广告宣传你的网站,呼唤人们行动起来。你必