Silverlight 3(C#)与Flash 10(AS3)

Avi*_*rix 2 c# flash silverlight actionscript-3

Silverlight如何与Flash 10叠加?

  1. 哪个更轻?(CPU消耗,加载时间,性能)

  2. 它具有更丰富的功能(API,库)

  3. 开发速度更快?

  4. 媒体处理(音频/视频流)怎么样?

  5. 我需要特殊的服务器/客户端软件才能使用它们吗?

Jam*_*ett 14

  1. 哪个更轻?(CPU消耗,加载时间,执行速度等...)

    • 它们具有可比性.Bubblemark有一个比较,试图对它们进行基准测试,但我会把它与一粒盐.事实上,你可以获得不错的表现.如果你开始盯着微基准测试,那么你将失去使用这种高级框架的重点.
       
  2. 它具有更丰富的功能(API-s,库等...)

    • 这取决于你想要做什么.Silverlight有.Net库(不确定的确切子集)可能很好.但是ActionScript和Flash已经存在了很长时间,并且拥有一个庞大的社区,几乎可以提供任何你想要的库.我认为你很难找到一个人可以做的事情而另一个人却做不到的事情.我喜欢ActionScript,但我认为我更喜欢C#作为开发语言.
       
  3. 开发速度更快?

    • 讨厌继续说"这取决于",但这是事实.如果您已经了解.Net和C#,那么您可能熟悉Microsoft工具包.Flash 10可以使用Flash CS4或Flex Builder(它是一个IDE)进行编程,因此,这取决于您是从工程或图形设计角度出发使用的.我认为MS将赢得开发工具之争,但Adobe将赢得与图形工具之争的整合.我不介意Flex Builder,它并没有让我失望,但是当我使用VS(C++)进行开发时,我对这种体验非常满意.
       
  4. 媒体处理(音频/视频流)怎么样?

    • youtube是Flash.与网上几乎任何其他主流音频/视频流媒体网站相同(少数例外).也就是说,一些新的Silverlight演示显示了令人难以置信的视频功能和控制.
       
  5. 我需要特殊的服务器/客户端软件来使用它们吗?

    • 要通过浏览器提供内容,都需要插件.目前Flash普遍存在.如果您要购买当前安装的绝对数量,那么Flash是最佳选择.Adobe还允许您将Flash内容发布为跨平台桌面应用程序.这确实要求用户在其计算机上安装了Air运行时,但它允许您创建在Windows,OS X和Linux上运行的应用程序.

我触及的一件事非常重要的是社区规模.Flash社区更老,更大.这很重要,因为更容易找到做过类似于您尝试做的事情的人.教程,示例代码,博客,论坛,开源第三方库等的数量使学习ActionScript变得简单.

对我来说,决定归结为几个问题:

  1. 您是否已经了解C#/.Net和Microsoft开发工具链?
  2. 您当前安装的用户群的大小对您的决定有多重要?
  3. 您是否有兴趣开发跨平台桌面样式应用程序以及浏览器插件内容?
  4. 您是宁愿成为年轻平台的先驱者还是从旧平台中获得的经验中获益?

  • 好答案.我要向你的#5添加Silverlight 3支持浏览器外安装,就像Air为Flash做的那样,但不需要单独的附加组件. (3认同)
  • 谈到Bubblemark,有一个过时的SL2实现.通过优化的实现,SL3 bubblemark的速度提高了3到6倍,主要是因为它使用了GPU硬件加速.此外,Silverlight在计算密集子句中的速度非常快(2-4倍). (2认同)
  • Silverlight响应adobe Air的一种方式是将应用程序从Silverlight迁移到WPF桌面应用程序非常容易,因为它们都是C#/ XAML,使用相同的设计器,并且具有相似(但不完全相同)的对象模型.当然,WPF不是跨平台的.但是,Air是基于解释器而WPF是编译/ JITed的,因此WPF应用程序应该更高性能. (2认同)