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年可以看出市场佔有率高下)。