最近一年来,我从C#的世界中走出,从后台系统、商业逻辑等走到前端技术和用户界面系统。我看了看XHTML,CSS和Javascript,这么多年来每次我都会失望:这些技术看起来是那么地相似感觉一样,不论它们是用什么IDE、代码执行,也不论它们在不同的浏览器里看起来有多么的不一样。
Silverlight被称为是“C#的Flash杀手”,结果证明它是一个很有趣的技术,看起来也确实像是“Flash杀手”。给浏览器下载一个plugin,就可以马上看到所谓的“富互联网应用”,包括有声录影(Movie Clips)、矢量图形(Vector Graphics)等。
Silverlight使用的是一种基于XML的语言叫XAML,所有代码可以在.NET上实现,那意味着C#代码可以编译和运行在浏览器内的CLR。非常酷。而且更好的是,它不仅可运行于IE浏览器,而且可运行于Firefox甚至Safari。功能差不多的运行在Linux上的版本称为Moonlight,也是来自于微软的支持。
以下是我使用Silverlight的一些看法:
l 非常有趣且易学;
l 看起来像是一个真正的开发工具,因为它基于VS2008、XAML和C#(或者VB);
l IE 7 的plugin比较费时间,无论是1.0还是1.1 alpha版;
l 1.1 alpha版的Codebase和documentation远不够完善,期待中;
l 还有许多我希望能够被包含的特征以及预告中透露的,我也在期待。
Silverlight是仍在完善中的一个东西,预计在2008年第一季度推出新beta即Silverlight 2.0,届时将包含许多特性。在我看来,Silverlight将在2008年夏天的时候成为一个“真正的”产品,问题是:它会成为Flash 杀手吗?随着Flash新版本的不断出现,时间将揭晓答案。
Flex是Adobe公司推出的RIA开发工具。使用Flex(version 3 beta2)可以通过一个开源的SDK来编译应用,也可以使用Flex Builder——个基于Eclipse的很迷人的IDE,最终的结果是一个SWF-file,可以运行于任何浏览器的Flash 播放器,或者一个使用Adobe Integrated Runtime(AIR)的桌面应用。完全跨平台。
Flex是基于MXML,跟XAML疑似相似。用ActionScript 3(AS3)写代码,AS3是一个基于ECMAXcript的脚本语言。我以前在哪儿听到过ECMAXcript?哦对了,是Javascript。
但是Flex证明它并不差,我并不会在这里一一列出它的性能。而且AS3和Flex非常地简单,可以很快地、没有痛苦地编写复杂的RIA。而且我可以告诉你,关于你听到的Flex的性能绝对不是空话,而且它的开发团队已经研发Flex很长时间了。不仅仅跟一个简单的web服务结合?使用一个接口跟某人直接交流?导入和处理音频、视频?都有可能。
胜者是?
或许Silverlight真的会成为Flash杀手——但我不认为是一夜之间的事情。根据Adobe的数据,Flash播放器占据97%的桌面电脑而且正在成为移动设备的领先平台,Silverlight至少要12—24个月才能达到这种程度。