热词世界杯 |
2008-10-08 10:04 作者:小回 责任编辑:zhangyijie
随着Novell公司于今日发布Mono 2.0,微软.NET框架在开源Linux平台上的应用得到了巨大的提升。The Mono 2.0是Novell针对微软.NET平台的开源应用的实现,该版本的Mono将缩小微软.NET平台和开源Linux平台的鸿沟。 尽管Mono 2.0能够兼容微软.NET2.0,但还是不能够完全支持最新版本微软的.NET。Mono最重要的贡献当属其将基于.NET应用程序在开源Linux上运行成为可能。 Mono项目领导人Miguel de Icaza向InternetNews.com网站透露表示,“我们的确在某些领域加紧追赶的步伐。”他暗示道,Mono项目所做的实际上是在鉴别.NET开发者所用的是哪一个部件。自Mono 1.2.3版本(Mono Migration Analyzer,Mono程序移植分析器)推出以来,该工具用来检测.NET程序的可执行性并且用来决定能够使.net运行的所有必需部件。 De Icaza表示,“多亏有了来自MoMA的统计数据,这样我们才能优先考虑重点发展人们使用的部分。之所以如此重要,是因为我们的确已经延缓了某些API的开发工作。比如Windows Presentation Foundation(WPF),这个就不在我们现在的开发工作之中。” WPF就是微软.NET 3.0详细规格的一部分,曾一度以“Avalon”代码而闻名。WPF囊括在Windows Vista和Windows Server 2008之中,为开发着提供了图形分系统。De Icaza声称就目前而言,WPF还未被开发者所广泛使用。他补充道,“IT开发者的周期并未和生产商的发行日期保持步调一致。绝对有某些早期的使用者会使用最新的API并且这些人也不是Mono的用户。但是目前的开发者还是会对Mono感到满意。” 此外,此次发行的Mono 2.0除了不支持WPF之外,Novell公司产品经理Joseph Hill指出,只有50%的通过MoMA分析工具检测的应用程序能够毫无错误地完全支持.NET。但是相对老版本10%的数据,Mono 2.0的进步还是有目共睹的。 Hill解释道,“.NET能够充分发挥非受控代码(unmanaged code)和老函数库的作用。但是可移植性的缺陷在于如果你是在使用未能在目标平台上获得的老函数库的话,应用程序只能在函数库迁移的前提下实现成功迁移。在.NET里面有一些具备Windows特性的函数库,而这些不太可能被Mono项目所迁移。” 从技术角度来看,Mono 2.0的关键在于对Windows Forms提供了完整的支持,这是Mono项目团队花费多年的努力才达到的目标之一。Hill表示,“Mono 2.0对于我们来说是一笔大生意,它意味着我们能够完全支持.NET 2.0。对于桌面组建我们曾经只能做到部分支持,而如今Mono 2.0却实现了完全支持的目标。” 据了解,Windows Forms是微软视窗操作系统桌面用户界面组件的图形化API。Hill承认,考虑到多种原因,将Windows Forms完全整合至Mono 2.0是一个十足的挑战。他解释道,“内嵌的浏览器控制组件可能是最大的组件,它是基于Windows的IE浏览器,我们根据火狐Firefox浏览器也重写了这个组件,但前提是必须保留同样的组件行为和控制。” Novell自2001年就开始致力于Mono项目,2004年推出其第一个测试版的Mono 1.0,Mono 2.0版本的推出在Mono项目中具有里程碑似的意义,而下一个版本Mono 2.2将会按照原计划在今年11月发布。据悉该版本的Mono将包含有一个全新的代码生成引擎,能够生成更优质的代码,此外除了提升对Windows Form的支持外,其他计算领域内容也在改善目标之中。 |