理想的用户界面是无形的。需要的时候,招之即来,所有想要的功能一应俱全;不需要的时候,挥之即去,用户可以不受干扰地继续专注于手头的问题。

这句话是我学习Ajax之前,读到的前言,当时就感动地泪流满面,以为终于找到了正确打开客户端设计之门的钥匙,接下来开始潜心研究Ajax的使用。

后来我看到微信张小龙的有些理念与其类似,不知是巧合,还是因为跟我一样读到这句话受到启发,从而应用到微信上。

ajax开发思路(也许你已经不再用Ajax)(1)

Ajax(Asynchronous JavaScript XML)刚出现时,大家最直观的印象就是能实现局部刷新,而网页的局部刷新对用户体验的提升不止一点点,往往大家是从这个最表面的功能入手。

ajax开发思路(也许你已经不再用Ajax)(2)

随着对Ajax研究的深入,才逐渐了解到Ajax的内涵。没错,它就是为提升用户体验而生,因为Ajax本身就是一些旧技术的重新组合,锻造,延伸,但是因为巧妙的运用,已经远远超越其原有的概念,最显著的成果就是提升了用户体验。

Ajax最著名的应用案例当属Google地图,当Google地图采用此技术时,带来了无与伦比的用户体验。Google Maps是由很多块小的图片拼接而成,如果需要显示新的区域时,这些区域的图片将会异步加载。由空白到加载,会一块一块显示出来。同时这些小块地图被缓存起来,再访问时速度非常快。

正是这些成功案例,那时很多Web开发者追捧起Ajax。直到今天,也许你已经不再用Ajax,但下面的这三点理念已经融入到血液中,潜移默化地影响着你的编程风格。

1)富客户端

一个“富”字,形象描绘出客户端的特征。这种理念把用户体验推上了前所未有的高峰。在客户端你就要设计出人性化的各种交互,异步交互是必须的,同时避开网络延迟等不利因素。相对于以前的哑客户端,用户的感觉就像从露宿街头突然转到了五星级酒店。

2)客户端中的是应用而不是内容

这里我用客户端而不是浏览器,就说明这一条适用于App等的开发。在设计客户端的第一步,就要把应用和内容区分开来,然后才是确定刷新的频率和与服务器交互的方式。

3)服务器交付的是数据而不是内容

这里的内容意思是展现给用户的格式。怎样展示是客户端的事情,服务器只负责交付数据。对于这些数据,客户端可以旋转排列,可以滤镜装扮,甚至是数据挖掘,发挥的是你富客户端的想象力。

这个跟第2)一起,说明了数据和应用分开的必要性。

很显然,由于2)和3)的理念,Ajax消耗的流量要比传统Web低一些。

通过数年Ajax的使用,我觉得上面三点是最大的收获。这三点理念,不管对于你是Web开发者还是App开发者,都是至关重要,应该写下来当作最基本的设计原则。

ajax开发思路(也许你已经不再用Ajax)(3)

这三点,你Get到了吗?

(科技自媒体原创作者:钱庄王员外)

,