非Windows系统上的.NET框架

    使用.NET框架编写的应用程序,会被编译为与处理器无关的MSIL形式,并籍由.NET框架类库与变化多端的特定操作系统隔离开来。这很像JAVA的世界;JAVA应用程序被编译为字节码(bytecode),并依赖JAVA标准库而不是直接调用特定操作系统。JAVA被清楚而明白地设计为可在多种处理器和操作系统上工作,.NET也是这样吗?

    从某个程度上说,答案是yes。微软自个儿已经提供了一个针对UNIX FreeBSD的框架基础移植版本,即所谓的共享源码CLI(Shared Source CLI)。理论上.NET框架的确可以成为广泛系统之间的跨平台解决方案。

    然而仍然存在一些技术方面的原因。尽管MSIL是平台中立,但.NET框架类库某些部分并非平台中立。例如企业服务(Enterprise Services)支持可伸缩、面向事务(transaction-oriented)的应用程序,而它乃是根植于名为COM+的早先的Windows技术。因此这一部分只能运行于COM+存在的地方。另外一部分类库也明显或多或少地泄漏了它的Windows血统。

    同样重要的是,微软必须努力让客户严肃地相信,微软将在非Windows系统上长期支持.NET框架。这个公司向来把所有焦点放在它自己的操作系统上,这已经成为其商业特点,同时也是它成功的首要因素。例如微软想让.NET框架真正成为JAVA的一个多平台竞争对手,技术上潜力正源于此。但至少到今天为止,.NET从根本上说还是一项Windows技术。

    事实上,作为现今最显著的.NET平台之非Windows实现,Mono项目,亦尚未博得更多的商业注意力。有些打算构建.NET应用程序的企业,曾寄希望于Mono提供所需的安全的非微软替代方案。然而在实践中,这个选项对于许多企业组织来说并不具备吸引力。不论你喜欢与否,在构建基于.NET框架的软件的人员中,绝大多数期望将其代码运行于某个版本的Windows之上。                                                   ——《Understanding .NET》

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值