如何阅读他人的Silverlight源代码
学习一项新技术,特别是编程技术,最好最直接的办法是学习高手编写的代码。如何阅读代码可以参考Code Reading这本书,此书荣获第14届Technical 效能大奖。几年前我们能够免费查看的代码大部分都归功于开放源代码组织,MS平台的开放代码量相对要少很多。最近这几年微软似乎意识到开源的好处,开放许多框架的源代码,还专门建立了微软的开源项目网站http://www.codeplex.com/。另外得益于博客的迅速普及,许多专家针对目前的热点技术在自己的博客中都撰写了大量的高水平的文章,这些文章大多具有短小精悍,深入浅出的特点,而且一般都会带有源代码。
Silverlight是微软力推的互联网RIA解决方案,Silverlight 2.0 Beta 1支持.NET托管语言,而.NET程序集是可以反编译的,这就为我们查看Silverlight应用程序源代码提供了机会。在这里我会提供这样的一种方法。
首先我们需要明白,Silverlight应用程序在部署的时候,会将应用程序用到的全部资源(包括XAML,Code-Behind文件,资源文件)全部打包到一个.XAP(虽然后缀为XAP,但是它实际上是一个zip文件)文件中,因此只要我们下载了这个文件也就获得了程序的源代码(当然源代码被混淆了的话,阅读起来会比较费劲)。
首先下载并安装一个称为weblinkviewer的小软件,这是一个IE插件,使用它我们就可以查看当前网页上的链接资源。
比如我们想查看PodcastPlayer2(链接地址为http://www.ufrate.it/testvari/Default.html)的源代码,我们只需要在浏览器的