现在的位置: 首页 > 综合 > 正文

Silverlight架构概述

2012年03月30日 ⁄ 综合 ⁄ 共 1896字 ⁄ 字号 评论关闭
文章目录

1.Silverlight概述

Silverlight技术是一个跨浏览器跨平台的插件,可以用来实现丰富的媒体体验和丰富交互性体验的web应用。在编程模型方面:

Silverlight1.0支持AJAX、.NET以及动态语言(Python/ruby)。Silverlight1.0利用现有的WEB技术(AJAX、Javascript、DHTML)来进行编程,

Silverlight2.0则进入了动态语言和.NET语言的支持,并提供了更多的新特性,比如独立存储(Isolated Storage)、网络编程(NetWorking)以及各种各样丰富的控件。

Silverlight 3.0是最新版本的版本,它刚刚才在09年7月推出,有望成为富互联网平台的首选。这一最新版本的Silverlight具备三维图像支持以及将图像作业卸载到GPU的能力,从而为用户带来更顺畅,更快捷的体验。Silverlight为智能客户商业程序开发提供了强大功能,其网络部署和导航性能都非常棒。该工具代表着未来的开发选择,Silverlight应用程序将为网站应用开发带来新的局面。

更多简介:关于Silverlight简介

1.Silverlight 1.0架构

Silverlight1.0的架构图如下图所示:在Silverlight1.0中,最主要的编程接口是基于Javascript文档对象模型(DOM)API的。通过JavaScript DOM API,可以接收应用程序中用户触发的各种事件,然后在进行编码实现相应。可以调用基于JavaScript DOM API的方法来进行控制XAML(可扩展的应用程序语言)中的元素,例如媒体播放、动画。

(图片来源MSDN)最上面的plugin 的主要作用是转化xaml文件,和js交互已经处理download等等,给下面的核心库去使用,而最下的multi-core rendering engine 是一个类似于加速器的优化引擎
对于1.0就不详细的说

clip_image002

另一张架构图。可分为两大部分:一个是展现部分,另外一个是.NET运行时(Silverlight2之后)。

下图展示了最基本的Silverlight应用架构

image

因为Silverlight应用程序在浏览器中运行,所以Silverlight应用依托于HTML,HTML承载并实例化了Silverlight这个插件。HTML标记中包含了初始化Silverlight插件的代码。当用户与Silverlight应用交互的时候,产生的事件就会被程序中的Javascript或基于.NET的方法捕获。同样,程序代码可以通过方法增加,删除和修改Silverlight中的内容。最后,XAML由Silverlight插件解释并展现。XAML代码可以直接嵌在代码页中,或作为外部静态文件,或从服务器动态生成。

 

2.Silverlight 2.0架构

Silverlight 2.0的SDK里提供的架构图

Silverlight2.0中增加了很多东西(黄色的是新增加的)

Silverlight 平台作为一个整体,由两个主要部分以及一个安装程序和更新组件组成,如下表中所示。

image

下表介绍前面部分和上图中所示的 Silverlight 平台的Presentation Core功能:

image

下表介绍了上图所示的 .NET Framework for Silverlight 功能列表中的部分功能。

image

Silverlight 提供了多个可帮助开发人员创建丰富的交互式应用程序的附加功能,包括下表中介绍的功能:

image

从整个silverligth的版本来说,1.0的时候其实已经提供了很多ui上支持,基本上能够创建RIA,但是javascript的操作复杂性让大多数程序员望而却步,微软为了改变这个局面所以在2.0增加了CLR,为了把非.net程序员拉进来又增加了DLR,另外为了能更大程度的兼容WPF程序实现xaml一次创建到处使用,所以在2.0里刻意去增加一些库来把wpf的东西包进来。

3.WPF与Silverlight存在的一些区别

Silverlight原名WPF/E 就是WPF Everywhere,Silverlight使用的XAML与WPF中使用的XAML存在一些区别,Silverlight中使用的XAML主要用于WEB相关的功能,是WPF XAML的一个子集。所以如果你之前熟悉WPF,就会很容易上手,只是在Silverlight中使用的XAML少了一些标签和功能,比如<windows>标签。

更多简介:关于Silverlight与WPF的区别

备注:文中内容有摘抄自于网络上其他朋友的文章(不好意思.因为忘记地址不能注明出处..)

 

抱歉!评论已关闭.