Silverlight是什么?
- 从最终用户即使用者的角度来看,Siverlight就是浏览器的一个插件,这个插件可以嵌入到Firefox、IE、Chrome等常用浏览器中。安装了Silverlight,浏览器中就可以运行Silverlight程序。
可以认为Silverlight是浏览器中的一个对象,这个对象可以嵌入到浏览器中。
可以这样比喻,浏览器天生可以嵌入图像Img等对象,你可以这样插入img对象:
<img src="flower.png" width="200" height="200" alt="flower" />
同样,你可以这样插入Silverlight对象:
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
<param name="source" value="ClientBin/SilverlightApplication.xap"/>
</object>
安装了Silverlight Runtime,浏览器就可以解释这个object了。
实际上,Silverlight就和大家常见的Flash是一个同类产品的东西。
说的这些,对Silverlighrt和浏览器的关系大概总算心有所悟吧。
2.从我们这些开发者的角度来看,Silverlight就是一种客户端技术,可以进行二次开发,当然有SDK了,微软的SDK当然会配备一堆可以拖拽的Tool和Control了。
既然有SDK,我们当然得熟悉他们的API,Silverlight API 共有两种API:
(1)Silverlight Javascript API
(2)Silverlight 托管API
如果你接触Silverlihgt比较早,如玩过Siverlight 1.0,恭喜你,你用过Silverlight JavaScript API了。
当然,如果你从Sliverlight 2.0 或者 3.0再或者从刚刚“出版”的Silverlight 4.0开始,你也不必紧张,Silverlight JavaScript API应用的场合不是很多,
具体来讲,Silverlight JavaScript API可以实现使用 JavaScript API 的初始屏幕,除此之外,所用的场合不是很多的。
大多数基于 Silverlight 的应用程序以托管代码编写并充分利用 Silverlight 应用程序模型。但是,您可以选择使用简化的编程模型。
Silverlight 为应用程序开发提供以下两个截然不同的模型:
-
Silverlight 的托管 API,它使用在 Silverlight 的公共语言运行时 (CLR) 上运行的代码。可以将托管 API 用于已编译的语言(如 Visual Basic 和 C#)。
-
Silverlight 的 JavaScript API,它使用由浏览器解释的 JavaScript 代码。
这些编程模型截然不同,因为您在 Silverlight 插件的单个实例中不能同时使用它们。但是,您可以实现使用 JavaScript API 的初始屏幕,然后在加载您的应用程序时过渡到托管 API。
托管 API 提供比 JavaScript API 多很多的功能,在大多数 Silverlight 文档中都会涉及它。使用托管 API 的应用程序可以访问 .NET Framework 的轻量级版本,而 JavaScript API 只能访问 Silverlight 表示核心和浏览器 JavaScript 引擎。
归纳如下:
Silverlight就是一个浏览器的插件,一个开发者的API。