silverlight 4及其架构new

silverlight 4及其架构new

ID:22000773

大小:456.60 KB

页数:16页

时间:2018-10-26

silverlight 4及其架构new_第1页
silverlight 4及其架构new_第2页
silverlight 4及其架构new_第3页
silverlight 4及其架构new_第4页
silverlight 4及其架构new_第5页
资源描述:

《silverlight 4及其架构new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Silverlight结构分析Silverlight是微软提供的一种Web前端应用程序开发框架,是微软RIA的主要应用程序开发平台。Silverlight以浏览器的插件方式,提供丰富的多媒体展示功能以及更多交互性的Web前端解决方案。本文的重点在于探讨Silverlight的整体架构,以及Silverlight应用程序是如何在浏览器中运行的,各个子部分的作用是什么。 1.     整体结构Silverlight是以浏览器插件方式运行的,在安装完Silverlight后,我们来看一下安装目录:C:ProgramFiles

2、MicrosoftSilverlight4.0.50917.0,主要文件如下:-  npctrl.dll实现了浏览器plug-in接口,Silverlight通过这个ActiveX控件与宿主浏览器进行交互。该Assembly会调用agcore来进行绘制,以及coreclr来创建CLR,Silverlight应用程序就是依赖于这个CLR中而被运行的。-  agcore.dllSilverlightPresentationFoundation,包括多媒体展示、基于向量的绘制引擎等等。这个DLL为什么会以“ag”打头哪?在

3、元素周期表中银(Silver)是47号元素,被称为AG(拉丁语),所以微软就把Silverlight的展现层Assembly称为“agcore”了-:)-  coreclr.dll-  mscorlib.dll-  system..dllCoreclr简单来说就是CLRforSilverlight,就是专门为Silverlight而定制的CLR,用来执行Silverlight代码。其他的DLL文件在WPF的类库中都有,只不过现在尺寸小了很多,这是作为浏览器应用所必须的。下图是Silverlightarchitecture

4、的图例,你可以把上面的DLL对号入座:  2.     CoreCLR如何才能使.Net代码在Web前端执行,如何才能使我们熟悉的.Net技术继续适用于Web前端,于是微软推出了CoreCLR。简单来说就是CoreCLRbring.NETtoWeb.如同CLR可以使得.Net代码在桌面应用程序中执行一样,有了CoreCLR,.NetFramework的代码以及应用程序的代码就可以在浏览器中执行了。2.1 CoreCLR与CLRCoreCLR与CLR有什么差别哪?首先两者是基于同一份代码库,其执行引擎完全相同。只是为了使的

5、CLR更适合Web,做了一些事情:-  基于Web应用场景,对JIT进行优化,加快程序启动时间;-  只需要提供WorkstationGC.2.2 CoreCLR安全模型Web应用程序都是不被信任的,你不能容忍一个Web应用程序来操纵用户本地的数据,或者在浏览器中的其他应用程序。一贯以来,.NET开发人员使用CAS来阻止不受信任的代码执行特权操作。考虑到Silverlight只需一个沙箱,而该沙箱又等同于Web页面中用来运行脚本的沙箱。CoreCLR简化了安全模型,去掉了CAS模型,定义所有的应用程序代码都是透明代码,信

6、任级别最低,它无法提升权限或访问计算机上的敏感资源或信息。对于SilverlightOOB的应用来说,可以通过一些配置来使其在受信环境中运行。 2.3 SilverlightBCLSilverlightbaseclasslibrary是.Netbaseclasslibrary的子集,完全基于原来的代码基构建。为了适应Web应用的需求,做了一些改变:-   减少尺寸作为浏览器插件,用户需要快速的下载安装,运行,Silverlight提供的类库必需具有很小的尺寸。所以基于浏览器应用的特点移除一些不必要的特性,例如Consol

7、e,COM操作,还有CodeAccessSecurity等等。-   添加特性同时也为Silverlight添加了必要的特性功能,例如IsolatedStorage等等。2.4 跨平台支持Silverlight提供了一个平台抽象层来支持更多的操作系统例如MacOSX,如下图: 在PAL层上定义了跟Win32相同的API接口,在Mac操作系统上会被重新定向。 3.     运行3.1 Silverlight运行环境Silverlight应用程序被托管在浏览器中,通过Silverlight插件加载CoreCLR,然后Core

8、CLR为应用程序创建AppDomian,最后初始化SilverlightApplication类。下图是MSDN关于Silverlight运行环境的图例:  3.2 Silverlight运行顺序最后我们看一下Silverlight应用在浏览器中是如何被执行的:-  浏览某个带有Silverlight的网页-  浏览

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。