首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

W3C Widget 配置与打包(1)W3C Widget 概述

W3C Widget 配置与打包(1)W3C Widget 概述

W3C Widget 概述         W3C “Widget 打包和配置” 规范是一个新兴的用于配置、打包和部署 Widget 的规范。        W3C Widget 由 HTML、层叠样式表(CSS)、JavaScript 文件和其它资源组成,如图片。        我们可以在设备中使用 Widget 实现一些小型应用,如日历、天气预报、聊天等等。
        相对于普通的 Web 应用,使用 Widget 的优点在于它们可以一次下载,然后多次使用,        这类似于安装在设备上的非 Web 应用。这可以让用户节省带宽,        因为它们所传输的数据只是 Widget 使用的数据,而不包括 Widget 文件本身。
                Widget 通常都实现了富用户体验,如交互式日历,甚至是游戏。我们可以在移动设备上使用 Widget,而 Widget 的一次下载、重复使用的优点可以节省数据传输的花费。
        从 2010 年 1 月起,W3C “Widget 打包和配置” 规范 (见         中的完整规范的链接) 就处于候选推荐状态。这表示 W3C 认为这个规范已经处于稳定状态,        并鼓励开发人员实现这个规范。
        W3C Widget 规范的目标是提出一个创建和打包 Widget 的标准。        目前有许多不同的供应商支持 Widget (见 ),        并且他们几乎都实现了它们自己的私有应用程序接口(API)和打包格式。
        本文将介绍 W3C 的打包和配置规范,        介绍我们可以怎样将 HTML、CSS 和 JavaScript 文件打包成一个可以部署到实现 W3C Widget 规范的设备的 Widget。        因为这是一个新兴的规范,支持 Widget 渲染的设备实现还是很有限的。如果希望看到 Widget 的实际运行,        同时还没有安装这些应用,我们就需要先下载这些具体的应用。
        要查看 W3C Widget 包的运行,我们需要:
  •                 实现 W3C Widget 规范的软件。本文使用的是 Apache Wookie,它是一个 Apache Incubator 项目,                它的作用是作为了 W3C Widget 内容服务器,用户可以用它来部署 W3C Widget。
  •                 一个创建 Widget 压缩文件包的工具。
  •                 用于下载和安装 Apache Wookie 的 Subversion (SVN) 客户端。
相关技术:其它 Widget 和服务器         目前市面上有许多不同版本的 Widget 和 Gadget,所以有时很难分辨这些技术之间的区别。        Widget 技术的差别增加了创建可重用富用户 Web 组件的难度。
Widget 与 Gadget                根据本文的撰写目的,WidgetGadget 表示的是相同的意思 — 可以像应用一样安装和运行在本地的小型组件。                本文采用的是与供应商相对应的方式来使用 Widget 或 Gadget。例如,如果是 W3C 产品,我们称为 Widget,                而对于 Google 的产品,我们则称为 Gadget。       

        除了 Microsoft® Windows® Vista Gadgets 和 Apple® Widgets,类似的技术还包括 Google Wave Gadgets、        OpenSocial 和 OpenAjax。这些技术都有自己的 API 和规范 (见 )。
Google Wave Gadgets        Google Wave Gadgets 概念上类似于 W3C Widgets,但是前者只是用在 Google Wave Web 应用中。        相反,W3C Widgets 则是由 W3C 发布的一个规范,是公开的,可以被不同的供应商使用。
        Google Wave 是一个 Web 应用,目前处于对开发人员和早期希望学习这个技术的用户开放的有限预览的阶段。        Google Wave 主要是一个社交工具,它以 Google Wave Gadgets 的方式向用户提供不同的功能。        开发人员可以创建 Gadgets 向 Wave 用户提供特定的功能。
OpenSocial        OpenSocial 是一个API,它可以用来创建能运行在社交网络 Web 应用中的 Gadgets。        OpenSocial 1.0 规范目前正处于预览阶段,        而 0.9 版本和 0.8.1 版本已经在各种 containers (使用 Gadgets 的 Web 应用)中使用了,        如 iGoogle、MySpace、Yahoo 和 LinkedIn。
        OpenSocial Gadgets 是基于 Google Gadgets 框架的。OpenSocial 框架包括预先写好的 JavaScripts API,        我们可以使用这些 API 来操作人、活动和持久化等数据。
        OpenSocial 是另一种备受关注的创建 Gadgets 的方法。
OpenAjax        OpenAjax 是 “一个专注于成功应用开放和互操作的基于 Ajax Web 技术的组织。        它由主流供应商、开放源码项目和使用 Asynchronous JavaScript + XML (Ajax) 技术的公司所组成”        (见 )。
        OpenAjax Hub 提供的发布和订阅(pub/sub)技术可以在 OpenSocial Gadgets 中使用。
        由于 OpenAjax 基于 W3C 打包和配置规范创建的 Widgets 能够使用 Ajax,        因此它是创建能改进互操作性的 Widgets 的一个非常好的技术。        我们可以创建既使用 OpenAjax 又符合 W3C Widget 规范的 Widgets。
Apache Wookie        Apache Wookie 是一个 Apache Software Foundation 的孵化项目,它能够同时作为 Google Wave Gadgets 和 W3C Widget 包的服务器。        Apache Wookie 是一个服务器应用,可以作为一个 Web 应用下载安装,或者作为单独的服务器运行。
        获取 Apache Wookie 源代码也是查看 W3C Widget 源代码的一种很好的方法。
        目前官方网站 (见 ) 上还没有预编译好的 Apache Wookie 二进制包,        所以需要安装 SVN 才能下载和运行 Apache Wookie。        使用  中显示的简单命令就可以下载 Apache Wookie。
                清单1. 下载 Apache Wookie        
1
$ svn co http://svn.apache.org/repos/asf/incubator/wookie/trunk




        在下载 Apache Wookie 后,我们可以通过输入  中显示的命令来将它作为了一个独立服务器运行:
                清单 2. 以独立模式运行 Apache Wookie        
1
$ ant run




ant 命令会以独立模式启动 Apache Wookie 服务器。        在服务器启动后,我们可以通过这个地址访问 Widgets:http://localhost:8080/wookie/。
返回列表