查看文章 |
银光的光.划破天际——微软Silverlight 线上体验 什么是Silverlight?前身代号是「WPF/E」,中译您可以称为「银光」,这是微软所推展类似于Flash相同的解决方案,但其表现来说,可让人眼睛为之一亮,面对Flash丝毫一点也不逊色,Silverlight它是免费内嵌在浏览器里的Plug-in(或称外挂、插件),所以除了在微软本身的IE之外,您也可以装在Firefox、Safari等浏览器上。 我们先来看几个Silverlight的线上范例:
范例1:
范例2:
范例3:利用SilverLight来线上示范产品功能的影片。
范例4:利用Silverlight制作的线上游戏,比赛得分记录最高者获胜。 以上及更多实际范例,各位可以到http://silverlight.net/showcase/去点阅参考 安装Silverlight 别忘了,与Flash Player一样,您要先安装好外掛才能够支援Silverlight,安装网址在http://www.microsoft.com/silverlight/install.aspx Silverlight带来的好处: Silverlight应该说是跨浏览器的免费外掛,这样的外掛,我们用以下四个层面来说明 一、跨浏览器的使用者体验 RIA(Rich Interactive Applications)在微软的解释是强调互动(Interactive),与Adobe RIA(Rich Internet Applications)虽有一字之差,但殊途同归,同样是要带给使用者与系统之间的互动及视觉化的感受。Silverlight在网页上可包含了影 片、动画、互动事件反应及令人昏眩的使用者介面。 在安装上,不到2MB就可快速安装完毕,并支援现有绝大部分的浏览器。格式上有向量式图形、影音多媒体、文字、动画及重叠能力,加上可运用在现有的网页或Ajax的程式架构上。 二、语言模组与协同合作工具 Silverlight是基于微软.NET Framework之上,所以现有的开发者或设计者能以既有熟悉的技巧,轻易开发出互动性的网页程式,此后端部分也支援了Apache、PHP。不过就以 开发语言来说,您可以用C#、VB .NET、JavaScript、Ruby、Python等来撰写逻辑程序。 官方以设计者及开发者来区隔适合的Silverlight整合工具 设计者:就是Microsoft Expression Studio,使用W3C标准,採XHTML、XML、XSLT、CSS及ASP.NET等技术来实现丰富型的网页使用者体验。 开发者:不外乎使用Microsoft Visual Studio(下一版为Orcas)来开发前后台,因为有专属的除错、侦测、语言等支援功能,所以很适合开发者使用。 Silverlight背后的展现层模组是使用XAML来宣告,宣告什么呢?所有的控制件、视觉化设计、多媒体元件,都是利用XAML来控制。这与Adobe Flex的MXML是不谋而合。 三、多媒体支援能力 视讯支援了720HD(High Definition),这是由电影电视工程师协会(Society of Motion Picture and Television Engineers; SMPTE)所提出的视讯压缩标准,其技术基础来自微软的Windows Media Video(WMV-9),所以可提供流畅又不失真的高画质影片,其次,官方号称其低成本的串流亦可佈署到微软下一代伺服器(代号Longhorn)的 IIS Media Pack上。声音部分则为WMA(Windows Media Audio)及MP3格式。 Silverlight的数位版权管理DRM(Digital Rights Management)也己支援,更还有微软Media Encoder编码工具来方便制作线上影音播放请求。 四、混搭(Mesh-up)网路服务能力 Web 2.0的来临,所以网页系统混搭(Mesh-up)能力很重要,Silverlight也不例外,支援LINQ(Language Integrated Query)、LINQ-to-XML,用在JSON、RSS、POX及REST存取上特别管用。另外,微软的Windows Live提供一个免费空间服务,可以快速将Silverlight程式及多媒体内容整合起来(稍后补充)。 Silverlight还有很重要一点特色在于,因为是XAML(eXtensible Application Markup Language)格式,所以可以将文字写在Silverlight程式的介面或内文上,做全文检索或文字搜寻时,就可派上用场。 免费Silverlight串流 Silverlight 串流服务具备以下功能:
Silverlight串流范例如下图:Adobe Illustrator to XAML制作范例 (网址:http://silverlight.net/samples/1.0/Video-Library/default.html)
Silverlight目前发展状况: 目前最新版本是Silverlight 1.1Alpha,下载网址在:http://msdn.microsoft.com/vstudio/eula.aspx?id=c8bf88e7-841c-43fd-c63d-379943617f36 下图即为Microsoft Silverlight 1.1开发者速记表,里头绘出了Silverlight整体架构,包含平台、服务、工具、语言、浏览支援及命名空间。
WPF与Silverlight有何不同? WPF(Windows Presentation Foundation),主要是提供统一的展现层模组,来建立诸如Windows Vista智慧型使用者体验,包含了使用者介面、3D模组、多媒体、文件等;而Silverlight是跨浏览器上的外掛,传达下一代网页多媒体互相性功 能,隶属于WPF功能上的子集,并可与Ajax来做高弹性的程式化互动。二者都是互补,也是基于XAML的展示层基础,若与Adobe技术来比, Silverlight犹如Flash,WPF犹如AIR(前身为Apollo),XAML犹如MXML。 Silverlight与ASP.NET / Ajax.Net关系 : 我们刚才有提到Silverlight整合既有的网页技术,这也包含了ASP.NET与Ajax.NET,因此就设计上可以补强二者关系,若以深入来谈 Silverlight可以与任何的Ajax程式来沟通,包含前端与后端(Client & Server side),所以ASP.NET与Ajax.Net能用来控制Silverlight为基底的视觉化资料,来表现出丰富的使用者介面,举例来说,您可以在 Silverlight指向到另支一支程式,或是用依据程式需求来播放一个影片。 微软Silverlight与Adobe Flash比较: 为了让读者更清楚目前微软与Adobe在RIA的展示层、语言、工具架构上的不同,笔者做了一个架构图,如下图所示。
小结: Silverlight为RIA开启另一扇窗,与Adobe Flash、Flex、AIR一样为使用者互动提供了崭新的解决方案,以开发角度来看,.NET开发者的您可以用.NET的程式语言VB.NET、C#, 甚至Javascript、Python、Ruby(多种语言)等来实现Silverlight于网页上,而Adobe的开发者就必须熟悉 ActionScript 3在Flex应用程式上(ActionScript 3单一语言),双方各有爱好支持者,就以目前二家发展状况而言,Flash、Flex己是Adobe RIA开发成熟产物,而微软Silverlight仍在1.1 Alpha版却不容小视(2007年会正式上市),因为从过去歷史观之,在.NET推广的浪潮下,己让各领域应用层面达到相当高的比例(不管是就业、教 育、各行业领域应用),加上Silverlight是附著在.NET平台策略上的一个重要技术,到底哪一个好,最终还是得由大环境与使用者来决定(笔者预 估2~3年可以看出市场佔有率高下)。 作者简介: |






