微软凭借其强大的技术背景和雄厚的资金实力,通过复制、模仿、完善竞争对手的产品,往往可以做到后来居上。 Flash***的优势在于它的技术成熟、稳定,并且已经拥有了一大批的忠实拥护者,在当前网络动画编辑领域居于绝对领先地位。微软发布的 Silverlight是一个跨浏览器运行的插件,和Flash一样,可以显示矢量图形、动画和视频。
虽然在很多方面,Silverlight表现出了比Flash更佳的性能,例如与AJAX结合更紧密,更容易动态生成,对搜索引擎更友好,开发工具集成度更高,等等。本文作者还是从以下四个方面列举了Silverlight无法取代Flash的理由。
技术潜力
对于一个专业开发者,在考虑选择哪门技术的时候,很重要的一个方面就是这门技术的发展潜力。包括它的改善空间、提升余地,以及你投入时间掌握这门技术后获得的经济回报。
在短时间内,Silverlight会表现出强大的潜力。微软是一家资本雄厚的大公司,典型的微软模式就是,微软会为Silverlight砸很多 钱,让人们相信这是一门值得学习的技术。我知道有许多Flash开发者已经通过开发Silverlight项目赚取了可观的收入,这些项目是由 Redmond直接或间接援助的。Adobe在这个方面完全不能和微软竞争。虽然Adobe也有雄厚的资金,但还远比不上微软那样富到可以买上一个小国 家。
从长远来看,人们从Silverlight开发中学到的基本知识也不会昙花一现。但是,如果你真的对开发跨平台交互式WEB感兴趣,Silverlight技术未来将会在很大程度上把你的成功锁定在同一个平台(Windows)上。
小结:Flash也许没有如Silverlight淘金般的发展潜力,但它是一门非常确立和成熟的技术(98%的安装基础,其中85%以上是 Flash Player 9版本),它还会继续扩大它的使用范围,并在相当长的时间内在开发交互式Web领域稳定增长。当前微软在推动Silverlight发展方面投入了大量的 金钱,但是在未来如果微软不再象现在这样往里面砸钱的话,Silverlight的前景就另人担忧了。
运行时
大多数对这两门技术的讨论都集中在其虚拟机的性能上。很正常,一个平台的成功性在很大程度上决定于它的性能。对于Silverlight,我并不是 了解太多,但从现有资料看来,当前1.0beta VM基本上是SVG/WM接口。它并不支持构件(AKA controls),没有现成的语言解释器,也没有太多另人兴奋的亮点。而在新发布的α版Silverlight 1.1中这些方面有了明显的改进。但是Adobe在这方面还是处于领先地位,成熟的跨平台开发体验,对目标市场也有更深入的理解。
接口大小和实用性也是考察的重要因素。Flash player,包括两个虚拟机、大量的功能程序,只有2MB,功能残缺不全的Silverlight1.0 beta是1.2MB(Mac上是5.3MB)。支持动态语言运行的α版Silverlight 1.1扩大到4.2MB(Mac上是10.3MB),如果要浏览Managed SilverLight的网页,就得下载这个Runtime,这对于储存空间拮据的手机系统来说,还是稍嫌庞大些。我预计将来还会更加庞大。接口大小在几 年前也许还不是什么大问题,但它仍然会对接受度有很大的影响。在另一个方面说来,与网络相连的电脑上已经有98%都安装了Flash player了,它能自动更新,可以在Windows、Mac和Lunix上运行,是发布后升级最迅速的软件产品(前提是用户接受新版本)。
小结:如果微软在这些方面继续改进,Silverlight会有非常大的潜力。不幸的是,我看到他们动作缓慢。Adobe仍大规模的领先,在实用性和普及率方面。
开发工具
我看过Expression suite,它给我留下了深刻印象,微软对它做了很大的改善。他们从Adobe的成功中学习长处并改进了其缺点。微软有许多开发实用开发工具的经验,这在 它们的Expression工具中就可以看出。在这方面,Adobe并没有太多创建开发工具的经验。微软正在对Expression进行更新。Adobe 也在做着一件深远的事,就是集成他们的开发工具创建一个凝聚性的工作流。
从另一个角度,微软并没有开发设计工具的经验,事实上他们对设计者还不够了解。他们的工具只能在Windows平台上使用,这从一开始就切断了一半 的设计者市场。在今年的微软MIX大会上,一位参会者在会间询问Lynda(Lynda.com站长),如果设计者们熟悉Expression后将如何转 到Windows平台上去。她回答说她自己就是个Mac用户,但她不会转到Windows上去。我为Lynda的诚实鼓掌,我相信这也清楚的证实了微软要 想让抵制者们改变原来的工具并不是一件容易的事。
小结:微软将会建立更完善的开发工具集,并提供更佳的集成工具。但是,他们事实上是不愿意支持Macs的,他们并不能深入的理解创造性和设计者是他们的要害。Adobe对创造的流程有很深入的理解,它们对跨平台的支持性是微软不能比敌的。
未来趋势
虽然很容易被忽视,但这是一个非常重要的问题。为什么微软会构造Silverlight?微软的长远意图是什么?现在主要猜测是用来抢占Flash的RIA应用市场,但根据过去的观察,微软的行动一直很稳健,我想这一次也不会例外。
微软因为其经常会在一项技术已被事实证明是成功后,再进入这个领域而臭名昭著,他们会扔进大量的金钱逐渐去扼杀竞争,一旦形成垄断,技术的发展就会 遇到很大的阻碍。微软也经常会因一时的怪念头而放弃对跨平台特性的支持。确实,他们提供的很多跨平台产品到***都会因为某种冠冕堂皇的理由被抛弃或半途而 废(MAPI in Entourage, IE, VBScript in Office, Windows Media versioning and DRM, heck, 甚至Halo)。
Adobe也不是慈善家,但他们已经证明自己的产品能够成功的支持跨平台特性,即使在交互式WEB页面开发上真正意义上的竞争者并不多,但 Adobe一直在对产品进行改进。Silverlight会迫使他们做的更好。举个例子,如果没有Silverlight的出现,我们能否如此快的在 Linux上看到Flash player9也将会是个疑问。
小结:如果消灭掉了Flash,继续追求跨平台特性就不会是微软***利益的选择了,也很难保证持续对其革新。做为一个长期的Mac用户,我真的不能相信微软的意图,但是看到在Silverlight的压力下Adobe的持续改进也是一件另人高兴的事。
总结
总的说来,我相信Silverlight的潜力,尤其在短期内微软砸进大量金钱的效果会比较明显。在不远的将来,微软的开发工具也可能会更加 健壮,比起Adobe提供的工具有更高的集成度,但是仅仅支持Windows平台的特性会让大量的开发者和设计者与Silverlight保持距离。我相 信Silverlight接口将会是一个合适的运行时程序,但它不会象Flash player那样打包到用字节计算,也决不会达到象Flash那样的安装普及率。
【编辑推荐】