.NET是一次写入,像Java一样运行在任何地方(WORA)平台吗?

Sco*_*aad 8 .net java multiplatform

我记得太阳的口号如此生动...... "写一次,随处运行".这个想法是因为程序被编译成标准字节代码,所以任何带有Java虚拟机的设备都可以运行它.多年来,Java似乎已经在许多平台/设备上实现了它.

这是意图还是.NET的意图.如果是这样,为实现这一目标,正在做出哪些努力?

Jam*_*ran 8

为了纠正其他人的一些评论,.Net总是打算成为多平台的.这就是为什么微软将名称空间分为"System.*"(平台中立)和"Microsoft.*"(Windows特定).


aur*_*amo 6

单声道运行在Linux,Solaris和OS X.在实践中的.Net仍是相当多仅Windows平台.相反,将它推向WORA并不符合微软的利益.然而,似乎是跨平台的.很多人对Linux上的Mono非常偏执.MS的假设策略是首先让它成为Linux应用程序平台的重要组成部分,然后释放律师.我不打赌我的未来在.Net的可移植性上.

  • 这只是恐慌.Microsoft已将其所有版本的ECMA C#规范和CLI规范置于其社区承诺之下,以不对所述规范的完整实施强制执行专利.http://www.microsoft.com/interop/cp/default.mspx (4认同)
  • 真正的策略似乎是鼓励大量的 windows-only 扩展,这样任何 .net 的开放实现只能提供“真正使用过的”完整环境的一个子集,这样每个 .net 程序实际上都是一个隐蔽的 windows 广告在其他平台上使用很痛苦。 (2认同)

Pow*_*ord 5

答案是非常不稳定的.包含外部库的那一刻,答案变为否.

例如,Microsoft没有64位JET驱动程序..NET使用JET来访问MS Access数据库.

在使用MS Access数据库的任何CPU目标上编译的任何应用程序都将在64位版本的Windows上失败.

(这忽略了所说的应用程序不能移植到Mono.)


Pau*_*enk 3

有了 Mono,我们已经非常接近了,而有了 SilverLight,我们已经准备好了。