InfoQ

新闻

Silverlight入门介绍和应用实践

作者 霍泰稳 发布于 2007年5月16日 上午5时28分

社区
.NET
主题
Silverlight,
富客户端/桌面
标签
XAML,
Web服务,
XML

在MSDN Magazine第四期上,微软Silverlight的技术传播者Laurence Moroney撰文深入介绍了Silverlight,并通过具体的案例介绍了这一新技术在客户端和服务器端的高效应用。

Silverlight是微软开发战略中的重要一环,是Web开发工具的关键组件。通过Silverlight,开发人员可以为应用加入内容丰富、视觉效果绚丽的交互式体验。值得一提是Silverlight的开放性,不论是在IE还是在Firefox或者Opera上都可以方便地应用Silverlight,另外它对Apple操作系统也有很好的支持。微软最近公开的一张Silverlight 1.1架构图详细地描述了它的整体架构。

在名为“Silverlight开始在整个网站积累更深入的体验”一文中,作者从技术细节层面介绍了Silverlight:

从核心上说,Silverlight是呈现XAML的浏览器插件,以可编写脚本的方式,向浏览器提供其内部的文档对象模型 (DOM) 和事件模型。因此,设计人员可以将含有图形、动画、时间线的XAML文档整合在一起,以便开发人员将它们关联到页面代码,实现其功能。由于XAML基于XML,定义下载至客户端的UI是基于文本的,因此对搜索引擎和防火墙都很友好。此外,XAML可以由服务器应用程序在运行时组装和发出,因此不仅提供了丰富的图形体验,而且是高度可自定义和动态的。

鉴于XAML对理解Silverlight的重要性,作者随后重点介绍了XAML的发展历程及本质。对想体验Silverlight功能的开发人员而言,文中介绍的两个简单应用很有意思。在Visual Studio 2005里,使用Silverlight应用程序模板只需简单的几步及少量的代码就能构建出一个可用的媒体播放器。为了展示Silverlight不仅是可以为浏览器提供丰富内容的客户端技术,还可以让开发人员构建与后端服务器交互的应用程序,Laurence还以使用XAML服务的形式实现了一个天气预报程序。

但正如作者所言,Silverlight的Web之路才刚刚开始。相信凭借XAML展示引擎的丰富性,以及所使用标准Web技术的灵活性,Silverlight会使得Web开发越来越便利。在MSDN网站上Laurence撰写的另一篇文章“Silverlight入门”里还阐述了这一技术的发展历史沿革。

2 条回复

回复

SivlerLight安全性改进如何? 发表人 Mike Meng 发表于 2007年5月17日 下午8时40分
Re: SivlerLight安全性改进如何? 发表人 Richard Zhang 发表于 2007年12月25日 上午1时0分
  1. 返回顶部

    SivlerLight安全性改进如何?

    2007年5月17日 下午8时40分 发表人 Mike Meng

    大家都把目光投射到界面的丰富性上,这当然是最大的亮点。但是其实还有一个重要的方面,应该被人提及,那就是安全性的问题。现在据称中国98%的上网电脑被植入木马,这跟Windows本身的设计失误有关,也跟IE的安全模型薄弱有关。SilverLight在这方面改进如何?InfoQ应该介绍介绍。

  2. 返回顶部

    Re: SivlerLight安全性改进如何?

    2007年12月25日 上午1时0分 发表人 Richard Zhang

    楼上的,很抱歉的告诉你,安全问题跟Silverlight是没有关系的,只要SL的宿主(比如IE)是以Administrator或者类似的高权限运行的,安全的问题就没有办法解决。只要是程序,就存在溢出漏洞,溢出的代码将以宿主的权限运行。您觉得呢?

独家内容

专访开源项目Amoeba架构师陈思儒

DBA notes站长冯大辉(Fenng)代表InfoQ中文站采访了分布式数据库Proxy开源项目Amoeba的架构师和主要开发者陈思儒,内容包括Amoeba项目的起因、功能及其愿景等。

使用JSF、Ajax和Seam开发Portlets(2/3)

作为三期系列文章的第二部分,本文延续了上一期内容,介绍了RichFaces,包括如何把RichFaces集成到之前提到的示例应用中、如何部署RichFaces porlet和RichFaces的多种特性和功能。

Jeff Barr谈论Amazon Web服务

Amazon Web Services(AWS)的传道者Jeff Barr讨论了SimpleDB、S3、EC2、SQS、云计算、Amazon的不同服务如何与应用交互、AWS的起源、SimpleDB和微软SQL Server Data Services、AWS cloud的全球化、三月份的AWS停机。

用Erlang实现领域特定语言

Erlang的并发模型很有名,它的健壮性也很有名。但其他方面呢?在这篇文章里,Dennis Byrne演示了如何用Erlang建立内部DSL。

基于Rails的企业级应用剖析

本视频主要以FreeWheel为例,对一个基于Rails的企业级应用进行了剖析。其中包括:FreeWheel的架构、部署、数据库的问题、REST API、敏捷开发过程、如何去写测试以及持续集成等等。

JavaFX技术预览

JavaFX显示了Sun的Java系列产品市场方向的一个重大转变。随着1.0版的即将发布,InfoQ以JavaFX预览版为参考,与Sun高级工程师Joshua Marinacci探讨了即将发布的1.0正式版。

剖析短迭代

敏捷教练Dave Nicolette提出:我们应该如何设定迭代长度?是要根据发布周期的时间么?使用短迭代又有哪些好处?

应用JSF、Ajax和Seam开发Portlets(1/3)

本文主要讲述了如何用JBoss Portlet Container 和JBoss Portlet Bridge创建新项目,怎样配置一个JSF应用去使用JBoss Portlet Bridge,以及JBoss Portlet Bridge所具备的功能。