【IT168技术资讯】
Adobe公司一直非常努力的开发Adobe Flex 3.0版本,预计在2008年初发布。Adobe Flex是一个开发工具集,为了构建富web应用程序,这些web应用程序使用Flash Player播放器,运行在浏览器中。另外,Adobe Flex也能构建桌面应用程序,使用Adobe AIR工具。InfoQ访问了Adobe公司的James Ward,了解了更多关于Flex 3.0版本的一些信息。除了他给我们提供的这些信息之外,你可以读一读它的Blog:http://www.jamesward.org/wordpress,了解更多的信息。
采访中,Ward首先谈论了Flex 3软件开发包和Flex Builder 3的一些增加和更新的地方:
在发布的Flex 3测试版中,已经对Flex 3 SDK 和 Flex Builder 3做了重要的改变。一些值得关注的变化如下:
l Flex Builder中有一个新的内存和性能分析器
l 支持利用Adobe 集成运行环境来创建应用程序
l ActionScript 类名分解
l 使用持久化框架高速缓冲器改进首次应用程序启动时间
l 改进Flex Builder中多处设计视图
Flex 3最成功的一个新特征就是持久化框架高速缓冲器。拥有这个持久化告诉缓冲器,如果访问者在刚访问完一个Flex应用程序,在去访问另外一个应用程序的时候,已经在Flash Player高速缓冲器中有了495KB的Flex框架。这就极大减小了用户所需要下载的应用程序的大小。在许多的应用程序中,这会使得初始应用程序的下载减少到100k的大小。
另外一个新的特征就是Flex Builder 3的内存和性能分析器。这可以让你准确看到你的应用程序在什么地方发生了内存泄漏,或者什么地方发生了性能瓶颈。
另外还有新的组件,如高级的DataGrid组件和改进的Charting制图组件,这些在Flex做了许多重大的根本性的改进。这些改进包扩更容易访问,运行环境本地化,支持构建深度链接(浏览器回退,书签等)。
想看所有的关于Flex 3的新特征,可以看下面的链接:
Flex Builder 3:
Flex 3在进军开源框架过程中作了那些的策略变化,和做了那些开源努力?
Flex SDK开源工作正在很好的开展中。Flex SDK是一个非常大的工程,我们要开源这么大的一个工程,是需要投入很多的时间的。像Sun 公司的JDK并不是在一夜之间就开源的。我们的目标就是在Flex 3发布的时候,将Flex SDK完全开源。在开源进程中的一些工作已经完成了。我们在Google Groups上有一个邮件列表,称为"flex-open-source",是为了讨论Flex SDK开源相关工作的。我们现在还公开的建立一个Flex bug数据库。你可以创建一个帐户,开始发现bug,提交bug等。打开下面的链接就可以:http://bugs.adobe.com/confluence/display/ADOBE/Home
关于Flex 3的许可证:
Flex 3 SDK将会免费,并且将很有可能会有一个MPL许可证。我们也将为OEM开发商提供一个双重许可证。我们还没有为Flex Builder 3宣布许可证的问题。
Ward被问到微软的Silverlight,微软进军到富客户端市场了:
微软并有真正进入到RIA市场。他们虽然构建了一个新的平台,不过这个平台只是盯在web的视频方面。而web视频只是RIA平台的一个方面。诚然Silverlight的VC1视频解码器很不错,但它激励我们不久就发布了一个更清晰H.264解码器,这也是我们以前计划好的。初次之外,我们还在Flash中增加了硬件视频缩放比例来支持全屏1080p的重放。
他还提供了关于Flex 和Silverlight更多的不同之处,说明了一个专业的开发者为什么应该选择Flex:
Flex领先Silverlight方面是我们的组件库,我们比Silverlight提前开发了几年了。使用Silverlight你不得从零开始构建你整个用户界面。Flex社区和Adobe公司提供了上百种可换皮肤,风格各异,可扩展的组件如DataGrids、Accordions、TabNavigators和Charts。我们这几年领先Silverlight其它的方面包括你构建一个富web应用程序所需要的可访问性支持、国际化、深度链接、单元测试、自动测试、数据绑定、拖拽管理、以及其它很多的功能等等。想详细的看看Flex中所包括的组件,你可以浏览Flex组件参考文档:http://livedocs.adobe.com/labs/flex/3/langref/;或者Flex 2组件体验:http://examples.adobe.com/flex2/inproduct/sdk/explorer/explorer.html;或者Flex 2风格体验:http://examples.adobe.com/flex2/consulting/styleexplorer/Flex2StyleExplorer.html。为了看其它社区提供的组件,你可以看下面的链接flexbox(http://flexbox.mrinalwadhwa.com/ )和Flex 组件交换网页
使用Silverlight,你可以使用Expression Blend技术产生一个XAML markup直接用于你的Silverlight项目中去。使用Flex的话,设计者使用像Photoshop、Illustrator、Flash CS3这些工具产生他们所需要的二进制对象(如bitmap或者 swf),然后开发者在Flex使用这些输出作为皮肤或者组件。
Flex和Silverlight的最大不同之处就在于运行环境。90%的电脑都已经有了Flex应用程序运行的环境了。Flash Player播放器在世界上广泛的采用和安装。而Silverlight就缺少这个大环境。
对于构建富客户端应用程序来说,没有什么比Flex更好的选择了。Flex的SDK是免费的,而且不久就会开源,Eclipse是一个开源工具,并且有一个大的社区环境。很明显,Flex的SDK背后也会有一个大的社区力量,推动其前进。
对于Adobe集成运行环境(AIR),Flex 3和AIR是如何结合在一起的:
Adobe集成运行环境(AIR)是为Flex、Flash、Ajax、HTML应用程序准备的一个桌面运行环境。它允许开发者使用他们现有技能和许多现存的代码来构建运行在桌面环境的应用程序,并且还增加了额外的功能。AIR应用程序可以访问系统资源、和系统的拖拽功能相结合、显示系统的通知、并且能将数据保存到嵌入式数据库中。开发者能够使用Flex 3 SDK 和 Flex Builder 3轻松构建AIR应用层序。AIR运行环境也能使得开发者轻松构建富客户端应用程序,拥有更多的用户定制体验和脱机工作能力。
这里有许多的公司,包括eBay和Salesforce,已经使用AIR。使用AIR的原因是许多的应用程序需要现在浏览器中提供不了的功能和定制特性。构建AIR应用程序还能使用开源的技术包括Mozilla Tamarin、Webkit和SQLLite。
如何区别Flash CS3和Flex Builder:
Flash CS3是设计者构建Flash内容的主要工具,Flex是开发者构建基于Flash的应用程序的主要工具。CS3发布不久我们就在labs.adobe.com提交了为Flash CS3准备的Flex组件包,它使得设计者在构建富客户端应用程序的时候更为轻松。现在,设计者可以在CS3中创建一些东西,然后直接给Flex开发者,这些开发者就直接把它们应用到应用程序中去。你可以看下面这个链接,是如何使用组件包的:http://adobedev.adobe.acrobat.com/p75214263/
Ward提供了运行Flex 3所需要的运行环境:
Flex 3所需的运行环境和Flex 2是一样的,需要Flash Player 9。但是,开发者可能选择更新版本的如果他们希望利用新版本中的新功能的话。持久化框架高速缓冲器和支持H.264需要最新的版本的Flash Player 9,目前还处于测试阶段。开发者可以检查用户的Flash Player的版本,看看是否利用了新版本的最新特征,或者安装一个新版本的体验一番。体验只需要简单双击,下载1 M的文件。最终有开发者自己决定什么时间来使用这些新特征了。
新版本的Flash Playe在9个月时间内,下载安装率达到了80%,12个月内达到了90%。你可以在Emmy Huang的blog上发现更多的数据分析。