
Silverlight与Flash共同点:
1. 两者都是用于RIA(富英特网应用)开发的。
2. 两者都提供了基于矢量的图形/动画解决方案。
3. 两者的播放器都是用ActiveX写的。
4. 两者都有自己独立的图形和程序开发工具。
Silverlight与Flash不同点:
文件格式
| Flash/Flex | Silverlight | |
| UI代码文件 | .fla, .mxml | .xaml |
| 后台代码文件 | .fla, .as | .cs, .vb, .js |
| 编译后文件 | .swf, .swc | .dll |
支持的浏览器、操作系统
| Flash/Flex | Silverlight | Moonlight | |
| 浏览器 | Firefox, IE, Safari | Firefox, IE, Safari | Firefox, IE, Safari |
| 操作系统 | Windows, Mac, Linux | Windows, Mac | Linux |
编程语言
| Flash/Flex | Silverlight | |
| UI描述语言 | MXML | XAML |
| 主语言 | ActionScript | JavaScript,C#, VB.NET |
功能
| Flash 8/9 | Flex 3/Flash 10 | Silverlight 2 | |
| 控件库 | 有 | 有 | 有 |
| UI界面描述语言 | 没有 | MXML | XAML |
| 2D矢量图形/动画 | 支持 | 支持 | 支持 |
| 3D矢量图形/动画 | 不支持 | 支持 | 部分支持 |
| 脚本引擎 | ActionScript2/3 | ActionScript 3 | JavaScript |
| 图形硬件加速 | 不支持 | 支持 | 部分支持 |
| 流媒体 | 部分支持 | 支持 | 支持 |
| 视频、音频解码器 | 无 | 部分 | 有 |
| 高清视频(>720p) | 无 | 无 | 有 |
| P2P(Socket通讯) | 支持 | 支持 | 支持 |
| 在线录音 | 支持 | 支持 | 不支持 |
| 在线摄像 | 支持 | 支持 | 不支持 |
| 跨域策略 | 支持 | 支持 | 支持 |
| 与JavaScript通讯 | 支持 | 支持 | 支持 |
| 本地存储 | 支持 | 支持 | 支持 |
| 与服务器进行数据交换(如Web服务) | 支持 | 支持 | 支持 |
| 与AJAX融合的能力 | 支持 | 支持 | 支持 |
| 内容保护功能 | 无 | FMRMS | DRM |
| SEO优化 | 不支持 | 支持 | 支持 |
| 本地化 | 不支持 | 支持 | 支持 |
| 深度缩放(电子地图需要用到的技术) | 不支持 | 不支持 | 支持 |
| 跨平台 | 支持 | 支持 | 部分支持,不支持Linux |
| 图像文件 | 支持 | 支持 | 仅支持jpg和png |
| 媒体标记 | 不支持 | 不支持 | 支持 |
| 位图特效(bitmap effects) | 支持 | ||
| 远程调试 | 不支持 | 不支持 | 支持 |
| 文件上传 | 支持 | ||
| XML | 支持 | 支持 | 支持 |
| XSLT | 不支持 | 不明 | 支持 |
| 移动设备支持 | 有 | 有 | 有 |
部署
| Adobe | Microsoft | |
| 用于服务器的操作系统 | Linux, Windows Server 2003/2008, Solaris 10 | Windows Server 2003/2008 |
| 专用服务器软件 | Flash Media Interactive Server / Flash Media Streaming Server、Apache/IIS、SVN Server | Windows Media Service、IIS/Apache、 |
| 用于开发的操作系统 | Linux, Windows,Mac | Windows、Mac |
| 开发工具 | Flex Builder, Adobe Creative Suite | Visual Studio 2008 (sp1), Expression Studio, Paint.NET(可选) |
播放器装机量
目前Silverlight装机量较低,这方面Flash占据了绝对优势。
对源代码的封装
AS跟javaScript一样都属于解释型语言,它是可逆的,所以比较容易被反编译。
Silverlight发布,只是发布资源包XAP,而所有资源都在这个XAP文件中,通过源代码一般可以得到该文件,然后利用反编译工具已可以进行反编译。
美工与开发人员的配合
Flash使用的开发工具是Creative Suite 3 + Flex(or Flash CS3) +未来的Thermo。CS3里包括了全世界公认的业界标准的设计工具包:Photoshop,Illustrator, AfterEffect, Dreamweaver, Flash。绝大部分专业美工人员都会使用这些工具,而了解Blend并能熟练使用者可能不多。