Silverlight作为开发WP7应用的基础,所以在学习开发WP7应用之前,我们有必要了解Silverlight的相关知识,下面我从以下几点来理解Silverlight。
一,理解Silverlight
1,定义:Silverlight是一种允许由XAML描述的元素在网络浏览器里显示的浏览器插件。
2,目的(或称作用):克服普通HTML的局限性,让开发者可以创建更加图形化,更具交互性的应用程序。
3,Silverlight支持不同的操作系统和浏览器。可以说它是跨平台的。
4,Silverlight非常轻小,整个安装文件大约只有5MB左右。
二,Silverlight与Flash对比
微软的Silverlight技术是Flash的直接竞争者。与Flash相似,Silverlight可以让你创建在客户端运行的交互内容,支持动态图形,媒体以及动画,这大大超越了普通HTML。但是与Flash相比,Silverlight主要有以下优点:
1,支持CLR,这是与Flash最大的不同。Silverlight包含一套关键的核心类,垃圾回收器,JIT(Just in time)即时编译器,对泛型的支持和线程等。这样就允许开发者使用纯C#代码来编写客户端代码。
2,2D绘图。
3,控件。Silverlight自带了一些基本控件,包括按钮,文本框,列表以及网格(Grid)。
4,动画。Silverlight支持一种基于时间线的动画模型。
5,媒体。Silverlight支持Windows媒体音频(WMA),Windows媒体视频(WMV7-9),MP3音频以及VC-1(支持高清视频)的播放。
6,联网。Silverlight应用程序可以调用旧式的ASP.NET Web服务(.asmx)或者WCF Web服务。它们也可以通过HTTP协议发送手动创建的XML请求,甚至可以直接打开一个Socket连接,从而实现快速的双向通信。
7,数据绑定。你可以从内存或XML中抽取数据并在网页上显示其数据。
同时,它也有以下缺点:
1,缺少数据库支持(没有ADO.NET)。
2,不支持3D绘图。
3,富控件少(一般由开发人员或组件公司自行构建)。
三,Silverlight版本介绍
Silverlight截止到目前有很多个版本,下面来简单介绍一下Silverlight版本的变迁以及各版本之间有什么不同或改进。
- Silverlight 1.0,第1个版本的Silverlight技术相对简单,它拥有2D绘画能力以及媒体回放的功能。不包含CLR不支持.NET语言。
- Silverlight 1.1,主要是引入了CLR并支持.NET,开发者可以使用.NET语言(包括C#,VB等)开发Silverlight应用程序。
- Silverlight 2,2008年6月底,微软发布Silverlight 2,同年北京奥运会,NBC网站使用了silverlight2.0进行奥运的网上全程直播和点播。
- Silverlight 3,2009年7月,Silverlight 3正式发布。基于相同的底层框架,增加了一些功能。
- Silverlight 4,2010年4月16日,Silverlight 4正式发布。
- Silverlight 5,2011年12月10日,Silverlight 5正式发布。在丰富媒体体验和企业应用开发两大方面做了重大改进。
四,了解Silverlight类库
Silverlight包含了源于.NET完整框架类的一个子集。虽然不能将全部的.NET框架都塞进Silverlight,但Silverlight同样包含了数量可观的功能。
Silverlight版本的.NET框架通过两种方式简化。首先,它不提供完整.NET框架中所有的类型。其次,它所包含的类通常不会提供全部重载的构造函数,方法,属性和事件。相反,Silverlight只保留了大多数重要类中最实用的成员。
下面是一些常用的Silverlight程序集。
- mscorlib.dll。Silverlight版本的mscorlib.dll包括System命名空间中的核心数据类型,异常和接口,常规集合和泛型集合,文件管理类以及国际化,反射,资源,调试和多线程支持。
- System.dll。该程序集包含附加的泛型集合,处理URI的类以及处理正则表达式的类。
- System.Core.dll。该程序集包含对LINQ的支持。
- System.Net.dll。该程序集包含了支持网络连接的类。
- System.Window.dll。该程序集包含了用来构建Silverlight UI(用户界面)的类。如基本元素,形状和画笔,支持动画和数据绑定的类,以及使用隔离存储的OpenFileDialog。
- System.Windows.Browser.dll。该程序集包含与HTML元素交互的类。
- System.Xml.dll。该程序集包含需要用来处理XML的最简化的类。XmlWriter和XmlReader。
以上就是今天总结的关于认识Silverlight的内容,下一篇将要总结的是在Silverlight中的布局,希望大家继续关注。