扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:builder.com.cn 2007年5月30日
关键字:
如果用XAML进行开发,能够在应用和网页中都使用它吗?
简单的回答是不可以。这是很多人对WPF的一个误解。主要是因为有一段时间微软使用的宣传口号:“最好的Web,最好的Windows”。人们就认为你开发的东西可以自动的在两个地方运行。但实际上并非如此。
我们可以构建一个可在Web页中运行的应用,我们将这些应用称为XBAPS,XAML浏览器应用,但是这要求客户端必须安装WPF来运行这些应用,所以它们不会在苹果OS X或Linux上运行,也不会在没有安装.NET 3.0框架的Windows 个人计算机上运行。
如果你安装了.NET 3.0框架,它就会像一个WPF应用一样可以在浏览器框架内运行,这样的话,看起来就会没有什么不同,因为的确是一样的。但是需要理解的是开发能够实际工作的东西的空间是十分有限的,因为这要求客户端安装.NET 3.0。
还有Silverlight,这是现在名称,以前称为WPF/E。它实际上是移动了一点边界,Silverlight的用意是解决大范围的硬件问题,因此它可以运行在苹果OS X系统上,可以是Power pc硬件也可以是Intel硬件,它还可以在IE之外运行,比如可以在firefox上运行。
但是这实际上不是使用WPF,而是使用XAML,因此,它和标记语言是同一家族的。不过它是XAML的一个相当有限的子集,你不能使用数据绑定,没有布局,没有控制,只有一个受限版的事件模型。它是一个很小很小的子集,坦白地说,对开发人员来说,使WPF让人真正感兴趣的并不是Silverlight。
这是因为他们想把所有东西集合到一个很小的下载版中,他们想把翻译,运行时,视频回放都集合到一个只有一两兆字节的下载版中,而不是像你机器上的.NET 3.0有40或50兆字节那么大。因此,免得你必须为灵活性付出一些代价。
你可以开发一个Silverlight应用,但是构建一个即能作为普通应用运行同时又能作为一个WPF应用运行是不可能,现在还没有能够这样做的方法。
或许将来会出现相应的工具,因为现在只是Silverlight发展的早期阶段。但在你使用Silverlight的时候,只是使用Silverlight和浏览器,如果使用WPF和XBAPS,只要在客户端有.NET,它们会和Siverlight看起来是一样的。
你认为选择Macintosh作为Silverlight的一个平台,其理由是什么?
我认为这在某种程度上宣示了该产品的跨平台特性,它不只是用于Windows。通过演示它可以运行于Mac,可以运行于Firefox,可以运行于Safari,可以运行于所有其它不同处理器,这是在表明该产品与WPF不同的一种方式。
你不需要Windows特定平台来运行它。至于为什么他们首先做出这样的声明,是因为他们承认存在大量不使用Windows的人群,他们希望能够接近这些人群。他们想说“看,你并没有被限制在微软的技术门外,只要你是运行Mac OSX的用户。”
使用计算机的人群只是一少部分但是十分重要的一部分,尤其是在某些行业领域,计算机处于支配地位,即使只占所有使用的个人计算机的很少的一部分。
如果你观察一下微软把像Expression套件等产品推向何处,你就会发现他们在逐渐集合这些产品以加强在那些领域的优势。因此他们非常接近Macs,因为Macs在这些领域是强大的,否则的话微软不会看重它。所以这只是微软希望占领真个市场的一个策略问题。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者