ActionScript类库推动mash-up Web2.0平台

作者 Moxie Zhang译者 沙晓兰

ActionScript是基于ECMAScript(JavaScript)的脚本语言。 在Adobe Flash player平台上,使用像Adobe Flash Studio、Adobe Flex和Adobe AIR这样的RIA authoring工具时,往往需要使用ActionScript。当RIA技术在web应用程序开发领域迅猛发展的时候,ActionScript随之开始得到软件开发社区越来越多的重视。尽管多数著名的Web2.0公司和大部分Web mash-up各自的用户界面都选用AJAX来构建,但同一领域里,在众多开源项目的支持下,ActionScript呈显著增长趋势。

InfoQ在这里采撷了其中一些为几个重大的Web2.0和电子商务公司所开发的开源ActionScrip类库一览究竟。

MySpace 开发平台ActionScript类库

本周(2008年2月4日),期待已久且引人争议的MySpace 开发平台终于投入使用。作为世界最大的社交网,该平台的投入使用对Web平台来说是一个重大的、新的扩展。除了传统的JavaScript和REST 接口之外,该开发平台还包含了一个ActionScript类库。通过该类库,Flash和Flex的开发人员可以立马着手为MySpace平台创建RIA应用程序。同时MySpace平台通过它本身的一些扩展,保持与Google的OpenSocial相兼容,但OpenSocial却仍然在考虑开发它自身的ActionScript接口。

Facebook F8 平台ActionScript API

MySpace的竞争对手Facebook曾花了一年的时间致力于投放他们的F8开发平台。之后,Jason Chrst开发了一个开源Facebook ActionScript类库并将其置于Google Code。这个ActionScript3.0 API提供了Facebook REST API和基于Flash/Flex的应用程序之间的接口。正如项目所描述的那样:

该开源ActionScript3类库是在Adobe Flex2的基础上开发的,但在Adobe Flash 9 或者 Flex 3环境下同样可以使用。该API允许开发人员创建桌面应用程序、网站应用程序、或是集成到Facebook网站的应用程序。

Amazon S3ActionScript类库

Amazon S3 (简单存储服务)是Amazon AWS(Amazon网络服务)的一部分,主要提供在线存储服务。在Google code上的ActionScript类库as3awss3lib正是为了与Amazon S3交互而开发的类库,此类库同时还依赖于另外两个S3 ActionScript类库:As3CryptoAs3corelib

eBay 平台ActionScript类库

eBay的ActionScript 3.0类库——as2ebaylib——为eBay XML API和基于Flash/Flex的应用程序之间提供了一个接口。该类库也可以从Google Code上下载:

这个开源类库将允许开发人员利用eBay交易市场服务(marketplace service)和Adobe Flash Player 9运行时创建新颖的、创新的应用程序。该类库使用ActionScript3.0编写,所以任何使用了ActionScript 3.0的环境都能使用该类库,包括Adobe Flex 2 和 Adobe Flash Pro 9。

FlickrActionScript类库

Flickr作为一个Web 2.0旗舰公司,提供了一组访问其平台的接口。除了Google地图以外,Flickrs是Web开发人员最喜爱的mesh-up Web平台。Flickr服务在最初就凭借它本身的视觉特性在Flash开发社区获得了很多开发人员的贡献。ActionScript 3.0类库——as3flickrlib就是一个例子。该ActionScript类库提供了访问整个Flickr API的方法。

YouTubeActionScript类库

YouTube很早就使用Flash技术来分发它的视频。由Charles Bihis、Mike Potter、Darron Schall和Daniel Dura共同开发的ActionScript 3.0类库——as3youtubelib,允许Flash/Flex应用程序从YouTube搜索视频。

Yahoo! ASTRAActionScript 类库

Yahoo的Flash开发员中心开发了针对Flash平台的API。ASTRA Web API包括提供对Yahoo各项Web服务进行访问的ActionScript类库。据Yahoo所述:

Yahoo! AS3 API类库是便于从Flex和Flash访问Yahoo! Web API的一组封装工具。这些类库在Yahoo!服务器所使用的通讯协议之上创建一个抽象层,这帮助Flash和Flex的开发人员在发送和接收数据时不再需要额外的数据解析。AS3类库安装很简单,并且所有可访问的方法都有详细的文档。这些类库都开源,可以在BSD许可下使用这些源代码。

ASTRA Web API为Yahoo! Answers、Yahoo! Weather、Yahoo! Search、Yahoo! Upcoming以及Yahoo!地图通讯提供ActionScript 3.0类库。

Google地图ActionScript API

目前仍处于beta版本的ActionScript 3.0 Google地图API——UMap,是由AF Components所开发的。AF Components这样描述UMap:

它是一个和Google地图集成的世界ActionScript 3.0地图API,可伸缩的组件模型使得你可以创建拥有交互式数据层的“富”地图。我们具有灵活的API可以帮助开发者建立完全自定义的解决方案。

  • 对自定义地图片(map tile)和地图供应者提供支持
  • 更新的加载算法以更快地加载地图片
  • Flash/Flex版本
  • 支持KML
  • 高级内容分层
  • 基于FLA-B的地图控制
  • 向量图形叠加
  • 扩展的信息窗口风格

Web地图服务(Google、Microsoft VE和Yahoo)(ActionScript API

Shane McCartney为主要的网络地图平台——Google Maps、Microsoft Virtual Earth和Yahoo Map开发了ActionScript 2.0 API。

TwitterActionScript 3 API

Twitter——micro blogging及lifestream的新兴公司,宣布去年它主要的网络流量来自于Twitter API。除了将REST API作为Web服务的末端以外,Twitter还提供了ActionScript 2ActionScript 3 工具箱,以便让开发者从基于Flash的应用程序访问它的平台。除了官方Twitter API外,还有像SWX Twitter接口这样的第三方接口类库也支持Flash和Flash Lite。另外,还有一些类似的新兴公司,比如Pownce,同样也为它自身的平台开发了ActionScript 3.0 类库

Digg (Flash工具箱)

社会新闻新兴应用程序Digg提供一个平台API来访问它自身内容。开源项目Digg Flash工具箱是ActionScript 3.0类的一个集合。Digg实验室曾通过案例显示使用这个Flash工具箱可以被用来构建Digg数据的可视化。

Last.fm音乐ActionScript类库

Last.fm是最大的Web 2.0社交音乐胜地之一。在Last.fm的大部分可用数据可以通过Audocrobbler Web服务API以多种格式被使用。Last.fm的ActionScript 3.0类库——lastfm-as3是一个开放源码的类库。该开源项目这样描述这个类库:

这是一个可以访问所有可用Last.fm Web服务的ActionScript 3.0 API。我们希望它能够通过解析feeds和对Last.fm所能提供的所有数据进行分类的工作来减少人工。这个项目正在进行中,所以目前尚不能提供所有的服务。

上文所列出的ActionScript类库只是冰山一角,是在Web 2.0平台上开发RIA mash-up应用程序的ActionScript资源的一个子集而已。ActionScript开发仍将继续进行,这些新的开发将同时来自于RIA开发人员的贡献和技术供应商的更新。去年(2007年11月),Adobe将ActionScript虚拟机的源代码捐献给Mozilla基金会。Mozilla目前拥有一个称为Tamarin的新开源项目,Adobe也将继续使用该项目成果,Tamarin会被作为Adobe Flash播放器中ActionScript虚拟机的一部分而投入使用。同时,Mozilla也会在嵌于Firefox中的JavaScript引擎——SpiderMonkey中使用Tamarin虚拟机。ActionScript正逐渐发展成一个成熟的应用程序开发语言。

InfoQ将继续对RIA领域中新的开发成果做即时报道。

查看原文:ActionScript Libraries Help Mashing up the Web 2.0 Platforms

Advertisements

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s

%d 博主赞过: