Web 2.0综述*
冯泽跃1+;
1(北京大学 软件与微电子学院软件技术系, 北京 102600)
摘 要: 本文首先对Web 2.0典型应用以及技术进行了简要的论述,并对Web 2.0与Semantic Web、SOA进行了多方面的比较,认为Web 2.0技术应和Semantic Web、SOA互为补充,以实现更加完善的网络应用。
关键词: Web 2.0 ; Semantic Web ; SOA.
1 Web 2.0的由来
Web 2.0最早是由由O’Reilly公司和MediaLive公司的一次会议上由DaleDougherty 提出的。他指出: Web 当时正处于类似于“文艺复兴”的时期。Tim O’Reilly在《What is Web 2.0》中提出了Web 2.0的七个原则:1. 互联网作为平台;2. 利用集体智慧;3. 数据是下一个Intel Inside;4. 软件发布周期的终结;5. 轻量型编程模型;6. 软件超越单一设备;7. 丰富的用户体验[1]。
其实,Web 2.0并没有在技术上进行了根本性的革新,它更注重的是提出了一种理念,即用户的分享和参与。在Web2.0中,它将控制权割让给了用户[4]。Web 2.0对Web 1.0进行了去中心化,去权威化,不再仅仅是由一些权威网站单方面的创造与发布信息,而用户单纯作为信息的受体。从这点来说,Web 2.0是草根性质的,它使广大网民都参与到信息的创造过程中。打个比方来说,从Web 1.0到Web 2.0, 网民们从只读时代进入了读写时代,从上网冲浪转变为自己织网。
2 Web 2.0应用
2.1 Blog
Web 2.0时代最典型的应用就是Blog,Blog 是Weblog 的简写, 是一种平台、也是一种技术、更是一种思潮。Blog 是一种新的网络信息发布方式, 它简单易用, 因而普及迅速, 大量的Blogger (写blog的人, 即博客) 生产了大量的信息, 他们是互联网信息自发生产者。借助于互联网, 人们就可以彼此分享自己的经验、想法、感受等, 并由此形成一种新型的网络虚拟社群和人际交往方式[9]。
2.2 Wiki
Wiki指的是一种网上共同协作的超文本系统,可由多人共同对网站内容进行维护和更新。wiki体现了一种哲学思想:“人之初,性本善”,wiki认为不会有人故意破坏wiki网站,大家来编辑网页是为了共同参与。网民可以通过网页浏览器对Wiki 文本进行浏览、创建、更改,就可以在系统中发布页面[10]。与其它超文本系统相比,Wiki 有使用方便及开放的特点, 所以Wiki 系统在一个社群内共同收集、创作某领域的知识, 发布大家都关心和感兴趣的话题[3]。
2.3 RSS
这个是Web2.0 标杆式的技术, 它以XML为基础, 是站点用来和其他站点之间共享内容的一种简易方式( 也叫聚合内容) , 通常被用于新闻和其他按顺序排列的网站, 例如Blog。一段项目的介绍可能包含新闻的全部介绍等。或者仅仅是额外的内容或者简短的介绍[11]。这些项目的链接通常都能链接到全部的内容。网站提供RSS 输出, 有利于让用户发现网站内容的更新。
2.4 Mashups
Mashups是一种Web 应用程序,它将其他几个Web Services提供的资源联合起来。它的功能是收集不同系统的信息和应用来为用户组装新的应用 [2]。最初广泛流行起来的Mashups是一个 Web 站点,它将芝加哥警局在线数据库中的犯罪记录与 Google Maps 上的地图复合在一起。用户可以与 Mashups 站点进行交互,例如告诉它在图形界面上显示南加州最近所有入室抢劫案件详细信息的地图。
3 Web 2.0技术
3.1 AJAX
AJAX的全称是Asynchronous JavaScript and XML,它不是一种技术而是多种技术的组合。AJAX采用远程脚本调用技术,通过JavaScript语言与XML HttpRequest 对象来实现数据请求,将处理由服务器转移到客户端,减少了服务器的资源占用,加快了数据处理的速度。AJAX能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。对AJAX主要的批评就是,它可能破坏浏览器后退按钮的正常行为。在动态更新页面的情况下,用户无法回到前一个页面状态,这是因为浏览器仅能记下历史记录中的静态页面。
3.2 开放API
以前的开放API(应用程序接口)主要指桌面应用软件,希望通过开放API 融合更多的应用。在Web 1.0时代只有少数网站,比如EBAY, 亚马逊公司(Amazon)、雅虎公司、Google 公司等,在设计之初就遵循各种工业化标准,进而开放API接口,正是由于这些开放的API,他们获得了不少有趣、有意思的应用。但大多数公司当时还没有这种意识,不过在Web2.0时代,开放API已经成为不可忽视的趋势[12]。
4 Web 2.0与Semantic Web
Semantic Web是一种能理解人类语言的智能网络,它不但能够理解人类的语言,而且还可以使人与电脑之间的交流变得像人与人之间交流一样轻松。为了实现 Semantic Web 的功能,需要提供一种计算机能够理解的、结构化的语义描述机制,以及一系列的推理规则以实现自动化推理。为此,Semantic Web非常依赖Ontology来将信息组织成能被机器识别和传播的形式[5]。
Semantic Web的显著特征:1.闭域(即Semantic Web的应用程序假定它处理的信息是在一个封闭的区域或网络中,比如数字图书馆);2.复杂综合的模型;3.为专业工程师设计;4.精密的推理;5.复杂的说明书以及重量级工具(相对于Web 2.0应用的轻量级来说)[6]。
通过列举上述特点可见,Semantic Web的专业性和封闭性与Web 2.0的草根性和开放性是南辕北辙的。但二者都拥有统一个目标,所以二者是互补关系而不是竞争关系。Semantic Web的技术能力可以支持Web 2.0应用的语义需求;Semantic Web技术可以支持和维护Web 2.0的用户生态系统;Semantic Web设计和执行的方式可以补充Web 2.0的商业模式[7]。具体来说,比如可以引入Semantic Web中的基本推理来调整和规范Web 2.0的tag系统,提高Wiki和Blog中交叉链接的有用性以及在社区中搜索的准确性。
只有当Semantic Web实现了更加简单、便宜、易用等特点时,它才会在市场上成功。而上述特点正以长尾理论为价值理念的Web 2.0所拥有的。故二者的结合必然会取得胜利。
5 Web 2.0与SOA
从复杂度隐藏、重用以及宽松的服务连接理念来看,Web 2.0与SOA之间有很多共同之处。SOA (Service-Oriented Architecture)是一种架构模型,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。有人提出了Web 2.0其实就是全球化的SOA,也有人提出了反对意见,认为二者之间有很多明显不同的元素,不能相提并论。
虽然Web 2.0和SOA都拥有灵巧和架构可变的设计原则,二者之间存在的差异也很大。Web 2.0面向的是整个社会并帮助使人与人之间的交互变得便利,而SOA仅仅面向了互相连接的分散的企业应用只是使机器之间的协作更加便利;与Web 2.0友好的界面相比,SOA对于用户来说更加抽象;最重要的一点,由于SOA是面向企业应用,SOA有着相对于Web 2.0来说拥有明确的需求和严格的管理机制。
尽管二者在设计和用户方面都有很大的差距,仍然有许多文章提出将二者结合,即global SOA。在《Web 2.0 and SOA》中,将这种模型称为IOS(Internet of Services)。首先将各种服务与应用(包括企业专业的应用与其他服务)加入到一个类似于(UDDI)的平台中,然后可以在这个平台通过资源的tag搜索需要的服务,使用Mashups来组装这些服务形成一个针对特定方向的应用,然后用户就可以通过各种网络使用这些应用[8]。
6 结束语
从Web 1.0到Web 2.0的过程来看,推动的力量并不仅仅是新技术,更重要的是新思想理念。如今Web 2.0的许多应用比如Blog, Wiki, SNS等已经发展的相当成熟。但Web 2.0仍然应该积极从Semantic Web和SOA中吸取思想和技术来完善自己,它们之间应该是互相补充协作的关系,而不是竞争对手。毕竟WWW只有一个,未来的Web一定是Web 2.0、Semantic Web等的综合体。
References:
[1] Tim O'REILLY. What Is Web 2.0: Design Patterns and Business Models for the Next Generation of Software. COMMUNICATIONS & STRATEGIES, no. 65, 1st quarter 2007, p. 17.
[2] Ingbert R. Floyd, M. Cameron Jones, Dinesh Rathi, Michael B. Twidale. Web Mash-ups and Patchwork Prototyping: User-driven technological innovation with Web 2.0 and Open Source Software. Proceedings of the 40th Hawaii International Conference on System Sciences - 2007
[3] Alexander Edlund, Carl Fried. Web 2.0 IT and Knowledge Management in the 21st Century. UPPSALA UNIVERSITY : PUBLICATIONS : MARC 21 8817
[4] Luke Tredinnick. Web 2.0 and Business. Business Information Review, Vol. 23, No. 4, 228-234 (2006)
[5] Alexander Maedche, Steffen Staab. Ontology Learning for the Semantic Web. IEEE Intelligent Systems, vol. 16, no. 2, pp. 72-79, Mar./Apr. 2001, doi:10.1109/5254.920602
[6] Anupriya Ankolekar ∗, Markus Kr¨otzsch, Thanh Tran, Denny Vrandeˇci´c. The two cultures: Mashing up Web 2.0 and the Semantic Web. J. Web Sem. 6(1): 70-75 (2008)
[7] Mark Greaves. Semantic Web 2.0. IEEE Intelligent Systems, vol. 22, no. 2, pp. 94-96, Mar./Apr. 2007, doi:10.1109/MIS.2007.40.
[8] Christoph Schroth, Till Janner. Web 2.0 and SOA: Converging Concepts Enabling the Internet of Services. IT Professional, vol. 9, no. 3, pp. 36-41, May/June 2007, doi:10.1109/MITP.2007.60
附中文参考文献:
[9] 孙志国. Web2.0,以个人为中心的互联网时代的到来.农业网络信息2005.12
[10] 朱德利. Web2.0的技术特点和信息传播思想.现代情报2005.12
[11] 孙茜. Web2.0的含义,特征与应用研究.现代情报2006.2
[12] 高祥华. Web2.0中的技术及应用.中国科技信息2006.13