内容:
WPF
一直以来,应用程序的用户界面都可以用不同的技术开发,从MFC到VB,从Windows Forms到HTML+JS。对于开发人员来说,这就需要针对不同的应用程序类型,使用不同界面开发技术。随着Flash等多媒体2D或者3D界面的出现,选择就越来越多。如果想使用一种技术就能开发各类应用程序的界面,这将是一个巨大的挑战。
Windows Presentation Foundation (WPF),最初代号为“Avalon”,目前作为 .NET 3.0的一个组件发布,就是为解决这一难题而设计。
WPF 为桌面客户端和浏览器客户端提供了通用基础,大大简化了二者的应用程序开发工作。WPF 采用更为现代的方法,支持视频、动画、2D或3D图形以及各种类型的文档,从而可以让用户以全新的方式处理信息。此外,WPF 还为桌面客户端和浏览器客户端提供了通用基础,大大简化了二者的应用程序开发工作。
作为微软的下一代界面技术,WPF的最大特点就是把界面的布局描述和界面逻辑代码分离。WPF通过XAML(扩展应用程序标记语言,一种基于 XML 的语言,允许以声明方式指定用户界面,而非代码)把专业界面设计人员的工作和专业的程序开发人员的工作分开,让他们更容易协作,以开发出界面炫丽,功能强大的应用程序。
同时微软为不同的工作提供了不同的工具,针对界面设计人员,推出Expression Studio;针对程序开发人员,推出Visual Studio 2008(有望今年年底发布RTM)。
通过提供更强大的图形支持功能,WPF 使得一系列数据可视化成为可能,而这依靠 Windows Forms 或其他的早期技术是不可能实现的。WPF 还提供了 XML Paper Specification (XPS) 的基础,可定义查看、分发和打印固定格式文档的标准格式。
Silverlight
Silverlight最初的代号叫“WPF/E”,意为WPF run on Everywhere,它是WPF的一个子集。Silverlight被社区称为微软出品的Flash Killer。
官方对其的定义是:“Silverlight是一个跨浏览器的、跨平台的插件,为网络带来下一代基于.NET的媒体体验和丰富的交互式应用程序”。Silverlight提供灵活的编程模型,支持AJAX, VB, C#, Python, Ruby等语言,并集成到现有的Web Application中,能够访问其中的DOM信息。内置多媒体技术的支持,可以以很低的成本播放媒体文件。
目前,Silverlight发布了两个版本, 1.0 beta和1.1 alpha。可以运行于Windows和Mac平台下。同时Mono项目也在积极的开发Moonlight,一个在Linux下的Silverlight实现。