Silverlight 4和Flash 10.1/AIR2简单对比和选择

系统 1792 0

Silverlight 4和Flash 10.1/AIR2简单对比和选择

互联网经历过Web 2.0的洗礼后,网络用户不仅仅局限于简单的交互功能,而对网络产品的体验性要求越来越高,对此RIA(Rich Internet Application)技术随之而来。目前RIA技术的焦点主要集中在微软的Silverlight技术和Adobe的Flash技术,相对来说,Silverlight比Flash晚推出数年,但是其发展势头和发展方向一直和Flash遥相呼应。近些日子,在 CSDN论坛 银光中国网专注Silverlight的 ,经常会看到一些新人的提问,什么情况下使用Silverlight技术,而什么情况下使用Flash技术呢? 本文将对此进行简单的对比和描述,但是在正文开始前,我想提前说一下,文章中没有对某一门技术进行抨击或者贬低的言语,只是提出个人观点,供大家参考,如果您有不同的看法,欢迎留言讨论。

Flash 10.1& AIR2

Flash的开发工具,Adobe的Flash开发平台提供开源的Flex SDK,另外提供免费Flex编译器,IDE开发工具是使用基于Eclipse IDE的 Flash Builder 。其运行环境是基于浏览器的Flash Player和Adobe的AIR,该运行环境支持Windows,Mac和Linux平台,并且支持RIA应用直接安装到桌面,其运行效果和功能与本地应用相同。 另外,Adobe利用其自身强大的设计开发工具背景,提供一系列Flash开发辅助工具,为开发人员或者美工设计人员提供强大的并且专业的交互设计支持,这里值得一提的是 Flash Catalyst ,该软件快速的设计出专业的Flash用户界面和行为脚本。

按照目前市场占有率分析,Flash仍旧具有较大的用户群,这不仅仅是归功于Flash Player的普及,Flash本身强大的Digital权限管理,流媒体功能,以及Flash Access 2.0数据下载等功能也是功不可没。在远程网络方面,Flash支持SOAP和REST Web Services,另外支持ASP.NET,J2EE,PHP,BlazeDS和ColdFusion等不同语言平台的数据服务。在开发语言上,ActionScript 3从早期的脚本语言发展到现在面向对象,事件驱动的强大的开发语言,也是一个强大的优势。新版的AIR 2发布后,Adobe将重心放在桌面应用开发上,其强大的调用本地代码类库的功能使其应用功能更为强大,AIR2的桌面应用可调用.Net或者Java的已有类库,同时该桌面应用支持UDP,IPv6等网络协议。作为Windows客户端,其强大的DRM控制可以提供流媒体数字版权控制。

Silverlight 4

微软的Silverlight开发平台同样为开发人员提供专用的运行环境和SDK,其IDE开发工具是Visual Studio系列,同样,微软也提供了免费开发工具 Visual Web Developer Express版本 ,Silverlight应用也是基于浏览器Silverlight Runtime,该运行环境直接Windows,Mac和Linux平台,Silverlight 3版本以后,支持 Out-of-Browser模式应用 ,可将Silverlight应用作为桌面应用方式安装到本地运行。不仅如此,微软将F#运行环境同时集成到Silverlight中,这样可以轻松开发出Silverlight和基于Ajax技术的应用。对于辅助设计软件,微软提供了Expression Studio系列产品,该产品包括 Blend,Design,Encoder 等系列辅助设计工具,用于Silverlight项目布局,素材,动画等设计功能,其中需要特别说明的是 Expression Blend ,该工具和Flash Catalyst很相似,辅助设计Silverlight项目交互界面,另外Blend和Visual Studio可以实现无缝结合,减轻了开发人员和设计人员的后期项目综合的负担。

对于Silverlight 4的新功能介绍和其优势,这里我不在赘述,大家可以参考这篇文章“ Silverlight 4正式版

在对比过Silverlight和Flash后,大家也许能发现,微软Silverlight中时常会发现许多Flash的影子,而在有了Flash的基础上,似乎更容易为Silverlight做出评估。这里我使用一个简单的表格进行对比:

Silverlight 4

Flash 10.1/AIR 2

客户端平台支持

Silverlight 4 支持运行在 Windows XP SP3 Windows 7/Vista Windows Server 2003 SP2 Windows Server 2008 SP2 Windows Phone 7 Symbian 系统平台,另外支持 Windows Mac Linux 下主流浏览器作为运行平台。

Flash 支持运行在 Windows XP SP3, Windows 7/Vista, Mac OS X, and Linux (Fedora Core 12, Ubuntu 9.10, OpenSuse 11.2); Flash Player 10.1 for Android. 当前仍旧没有支持 64 Windows 系统的 Flash Player

开发 IDE 工具

主要开发工具是 Visual Studio 2010 ,需要安装 Silverlight 4 developer tools 和相关 SDK ,以及 WCF RIA Services 1.0 安装包。可使用 WCF RIA Services 开发模板,创建 n-Tier 数据存储应用。具有优秀的 Debug 功能。同时具有强大的 Silverlight Toolkit 开发工具包支持。

主要开发工具 Flash Builder 可以绑定开发 Flash AIR 应用。但是代码转换过程需要另外的辅助工具 BlazeDS 或者 LiveCycle 支持。 ActionScript Debug 功能相对弱于 Visual Studio

UI 设计

主要设计工具 Expression Blend 4 ,该工具不仅提供 UI 控制,还可以进行动画设计以及行为代码设计。该工具同时包含 Xaml 代码设计界面和后台代码设计界面。该工具与 Visual Studio2010 无缝结合,使设计和代码后期综合变的轻松异常。另外 Visual Studio 2010 同时支持 Silverlight UI 设计。

Flash Catalyst Flash 主要设计工具,与 CS5 设计工具系列无缝结合,可以轻松导入项目。但是其他设计工具修改文件时,不能在 Flash Catalyst 中重新打开,作为设计工具,这点略逊与微软设计工具。

媒体编码

支持音频 / 视频格式: WMV/WMA, H.264, MP3, AAC

支持音频 / 视频格式: Sorenson Spark, ON2 VP6, H.264, F4V. ADPCM, MP3, AAC, Speex.

数字版权( DRM

支持 Windows Media Digital Rights Management 10 (WMDRM 10) Microsoft PlayReady DRM 加密流媒体。目前暂时不支持 Linux 客户端。

Flash Access 2 通过 Flash 或者 AIR 客户端提供内容保护和设备存取安全控制。相对来说其验证机制和开发规则较为规范。支持 HDCP 标识。支持 Flash Media 服务平台和 Http 动态数据流。

这样看来应该更容易帮助大家理解和认识Silverlight和Flash这两个技术的不同和相同点。

那么具体到项目, 该如何取舍两门技术呢?

首先我们需要客观的说,Flash在RIA技术中仍旧处于龙头地位,终归Flash Player具有全球浏览器93%的装机量作为支持,为Flash提供了非常广的应用范围。

但是,我们也不得不承认Silverlight发展速度的迅速,从Silverlight 1.0到4.0,我们目睹着Silverlight在一天天的进步,逐渐变的强大,而客户群也在稳定增长当中。终归微软仍旧占据浏览器市场的50%份量,作为浏览器插件Silverlight也是具有相当大的潜在力量。

个人观点,从微软和Adobe两个公司的发展历史来看,微软的产品更注重于开发人员,而Adobe的产品偏向于设计人员。这也就是说,在项目中,如果需要大量的程序编码和数据存取操作,特别是基于Windows平台的应用,Silverlight自然是首选。而如果项目中涉及少量的服务调用,需要展现大量的图形图像效果,或者是说在开发过程中,美工设计部分属于重点,则推荐使用Adobe的Flash,终归Adobe的设计工具在业界一直作为首选。

从目前来看未来Flash和Silverlight的竞争,也许是在移动平台上的表现。Flash刚被苹果解除封杀,目前有望第一步占领iPhone和iPad平台,而Silverlight已经被Windows Phone 7所支持,下周12号Windows Phone 7正式发布,市场占有率还有待观望。不过两者所需抢占的下一个移动平台主战场应该是Android平台,终归Android平台已经被不少手机平台所支持,作为开源平台,同时也被大部分应用开发厂商关注。

最后附上InfoWorld.Com对Flash10.1/AIR2和Silverlight 4各项测试评分表,供大家参考:

Silverlight 4和Flash 10.1/AIR2简单对比和选择

更多关于Silverlight和Flash对比文章:

网络战国——Flash, Silverlight与HTML5

Flash与Silverlight多领域实测对比

Silverlight 3与Flash横向比较

欢迎大家加入“专注Silverlight”QQ技术群,目前,1-6群都已经满员,新开500人七群,欢迎大家加入一起学习讨论Silverlight&WPF开发技术。
22308706(一群) 超级群500人满
37891947(二群) 超级群500人满
100844510(三群) 高级群200人满
32679922(四群) 超级群500人满
23413513(五群) 高级群200人满
32679955(六群) 超级群500人满
61267622(七群 推荐) 超级群500人未满

Silverlight 4和Flash 10.1/AIR2简单对比和选择


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论