技术开发 频道

为你解惑之Silverlight经典10问详解

  所以,我们可以这样来想象一下,Silverlight的架构是一个技术的集合体:一些来自.NET Framework核心的功能,Ajax,一些来自Silverlight Framework自身的功能,比如动画,多媒体等。具体来说,Silverlight的架构主要包括以下四个重要方面:

  •一些.NET Framework组件

  Silverlight使用了一些来自.NET Framework的组件。其中一个最主要的组件就是WPF。很多UI元素(例如复选框,按钮,文本框等等),XAML文件处理等都是来自WPF系统。另外,Silverlight也使用了其他一些组件,例如Silverlight借用了WCF用于数据的访问。借用了CLR用于内存管理,安全检查和垃圾回收。与网络相关的基类被用来进行字符串处理,算法,表现,集合和全球化支持等。

  •表现核心

  表现核心可以显示二维矢量动画,图像,多媒体,DRM,并且能够处理鼠标和键盘的输入。

  •其他技术

  Silverlight同样跟其他技术打交道,例如Ajax和JavaScript。所以它也向这些技术借鉴了很多功能。

  •托管(Hosting)

  Silverlight动画最终会运行在浏览器环境中,所以它需要一个托管功能,这样它可以运行浏览器中的应用程序并公开一个DOM给JavaScript,JavaScript可以通过DOM控制Silverlight组件。另外,它还有一个安装功能,可以用于在浏览器环境中安装Silverlight应用程序和插件。
 
  在下面这幅Silverlight的架构图中,我们可以看到表现核心读取XAML文件用于界面的展示,而XAML是.NET Framework的一个组件,但是界面的最终呈现部分却是由表现核心来完成的。
 


图16,Silverlight的架构

  Silverlight应用程序是运作在浏览器下的典型的HTML。其中有相关的标签将创建Silverlight程序实例。当用户跟Silverlight应用程序进行交互的时候,它将发送事件给JavaScript系统或者是.NET系统——这取决于你采用的是哪种开发语言。在JavaScript或者.NET的代码中,我们可以调用Silverlight的功能。XAML文件会被Silverlight运行时读取并处理,然后根据浏览器呈现出Silverlight应用程序的用户界面。
 


图17 Silverlight的运行机制
0
相关文章