...... 未来的网络服务一定是从这些微内容中产生。
技术是根、用户体验为本
提到Web2.0,大部分会提到Web2.0是用户参与,其实,用户参与在过去、现在和将来都一直存在,不是Web2.0的主要特征。且看《Google成功的七堂课》中的第四课“以用户体验为念”中提到一段话:
Google斯巴达式的网站,以精简的“菜单”上线,不收费,不鼓励你流连忘返,不用广告打扰你、不卖产品。设计的主旨是尽快让你查到信息链接,尽快离开。 谁不希望用户访问你的网站更多一点,最好是把每篇文章分成10页。“快点离开我”,这是以前网站所不能理解的,现在Google依靠口口相传访问量比别的网站都大。在Yahoo们拼命转型为门户的同时,Google却在搜索技术和用户体验上精益求精。
从我看来,目前web 2.0提出的一些新老技术都是为了更好地提高用户体验。对这些技术,以下逐个做些标注。
RSS -- 这是XML格式的子集,约定的一些固定标签让阅读器来识别。同时利于数据交换。
好处: 1) 用户可以订阅RSS,定向了解信息
2) 开发者可以把RSS作为数据源接口
局限: 1) 目前1.0,2.0的格式差别很大, 部分阅读器不兼容.
2) RSS固定的那些标签有时候不够用,比如传输图片等等.
建议: 只要不影响网站性能,尽可能多地地方使用
用户体验: 只要知道信息源, 就可以定向获取信息, 信息更畅通, 节省了门户的中转过程.
Trackback -- 有2种情况,接收Trackback和发送Trackback。接收Trackback是指对方发送过来的消息进行保存和显示,发送Trackback相对复杂,需要分析正文中的链接,逐个抓取页面,分析是否含RDF标志,如果有,提取其中的Trackback地址,再对Trackback地址发送消息。
好处: Trackback形成一个回路,让引用者通知被引用者,这样便于追查话题走向。
局限:1) Trackback实现消耗资源,很多Blog系统已经屏蔽
2) Trackback Spam是令人头痛的东西
建议: 一般最终页面最好提供Trackback的接收操作,让Trackback走出Blog的这个圈子。
用户体验: 知道了谁在引用, 就能更多地引起讨论并发现志同道合者.
Tag -- 技术上来讲就是多分类,功能设计上就是能够最方便地让用户对文档进行归属
好处: 1) 分类更容易,用户会更喜欢使用
2) 有了Tag归属,查找、联合查找更方便
局限: 1) Tag同义词等更多语义的元素还需要研究
2) Tag Spam也是令人头痛的东西
3) 在国内,使用多Tag的人不太多,使用习惯是个问题
建议: 只在对信息归类的时候考虑使用Tag, 信息越难找使用Tag效果越好。比如图片和视频是最难找到的,这时候使用Tag效果最佳。另外Rojo针对每个项标注tag的方式就有点过了,真的有这个需求吗?
用户体验: 添加分类更方便、随意,查找更方便、准确。
Web Services -- 这是实现异构平台数据交换的主要技术,数据传输也采用XML格式
好处: 异构平台可以无缝交换数据
局限: 需要程序员来开发才能使用Web Services
建议: 周天舒认为“Web 2.0的核心是Web service”, 我的观点不同,除非有技术上的合作伙伴的需求,否则实现Web Services接口的意义不太大。这不是说Web Services不好,只是在国内,程序员很少利用其他网站的Web Services去写附加应用。这种现状短时间难以改变,想想国外红火的开源为什么不能在中国星火燎原就知道为什么了。
用户体验: 用户感觉不到,需要有开发者开发出相关应用才有效。
Web标准(CSS+XHTML) -- Web标准这个词随着去年《网站重构:应用WEB标准进行设计》一书在国内推广,总体还说没有什么技术含量,主要是对美术设计工程师提出更高的要求,改变原来一些网页设计的习惯。
好处: 1) 页面更小、加载更快
2) 页面更规范、减少了和程序的交互
局限: 主要是学习成本,目前还没有一款很好的可视化编译器
建议: 尽量多采用
用户体验: 页面加载速度更快,方便了用户访问
URL Rewriting -- URL重写其实就是一个特殊的Http Handler。通过这个Handler过滤每个URL请求,根据需求对URL进行重定向的技术。
好处: 使得URL更短,更好记
局限: 在IIS中Handler一般对某个后缀文件进行处理,如果是通配符处理,事实上Handler处理了许多不需要处理的请求,造成浪费。
建议: 尽量多用,IIS中实现参考在ASP.NET中执行URL重写
用户体验: 用户可以很容易记住网址,方便下次访问。
Ajax -- 全称是Asynchronous JavaScript with XmlHttpRequest,Ajax通过调用XmlHttpRequest实现与服务器的异步通讯,并使用对应平台的XmlDom对返回的Xml消息进行处理,然后再通过DOM对页面中的HTML元素的操作实现丰富的、友好的用户界面。大家都知道,这是一项古老的技术了,“时尚的轮回-Ajax”指出,
Microsoft Remote Scripting与Ajax几乎如出一辙。但是由于当时服务器端技术风靡,而一次部署到处运行(只要有浏览器就行)的口号声一浪高过一浪,使得人们忽略了用户交互。而为了提高用户体验的Microsoft Remote Scripting 也就没有得到过多的关注。
我们知道,ASP.NET 1.x 的 Post Back 和 View State 引进了个新的概念:服务器端的事件驱动编程模式,其副作用则是整个网页不断刷新。 但是,ASP.NET 2.0 的 Script Callbacks 将再次引进新的概念 Refresh the Data, Not the Page,其核心思想和Ajax有什么区别呢。
所以,不管Ajax是否是“老酒有了新瓶子”,这样技术的继续发展对网站绝对是非常好的事情。现在有很多非常Cool的Ajax开发包,比如script.aculo.us、Rico可以帮助我们轻松实现复杂的异步数据处理,AJAX Matters有更多这方面的开发信息。
除了Google重视Ajax以外,我们看到Microsoft也准备在9月的PDC上推出相关软件了。看来注重用户体验的大势所趋不可逆转。
好处: 用户不需要刷新页面就可以完成异步的数据交换
局限: 某些浏览器版本对XmlHttpRequest、Javascript的支持还有很多不同的地方
建议: Ajax适合哪些应用?我认同Buffalo作者点评AJAX中的观点:
从外观看来,适合那些对URL不敏感的web应用。如果一个应用对url的关心程度大于对交互特性关心程度,那么就不要妄想整个应用采用Ajax, 否则可以完全采用Ajax. 例如,一个论坛系统,如果用户不能通过url定位到一个确定的页面,那么这个应用是失败的;但是如果是一个email系统,传统的email每次点击都需要download整个page, 相比gmail的交互性与操作性,哪个成功哪个失败显而易见了。
用户体验: 大大加强,只要技术使用得到,和客户端软件没有两样。这也说明Ajax是实现RIA(Rich Internet Application)最好的技术之一。
wiki -- 一个人人参与的CMS系统
好处: 聚集大家的力量来建设互联网内容
局限: 排除Spam的因素以外,人气也是个问题,我们不能期望到处是百科全书
建议: 我不太看好Wiki在中国的发展,原因和开源相同。
用户体验: Wiki的共同创作和链接方式 可以让用户在一个地方了解到足够多的信息(当然是wiki信息足够多才行)。
关于用户体验,我最近在看VB之父Alan Cooper的 About Face 2.0,书中大量案例来剖析用户界面的设计和原则,虽然大部分是针对软件的,但是对Web设计很有参考价值。另外,Patterns in Interaction Design也是一个非常不错的Web设计模式网站,里面的案例全部是针对Web的,值得好好学习。
引用老冒的一句话结尾:别关心什么web 2.0, 关心那些真正能改善你的web用户体验的技术,关心web技术的发展趋势吧。