1

我正在研究 WPF。我刚刚发现了这个 MONO 项目,所以我对 MONO 很陌生。我想知道在 mono 上编写的程序与在 .net framework 4.0 上编写的程序一样快速高效。它是否使用与编译相同的 JIT。如果没有,是否也有任何研究正在进行。

4

2 回答 2

5

如果您只使用也在 Mono 中实现的组件,那么您编写的软件通常会以类似的性能在 Mono 上运行(它确实实现了 VM 和 JIT 编译器,就像 .NET 一样),那么问题就在于此:

Mono没有实现 WPF!

一般来说,您会看到,Mono 缺乏对许多新的任何花哨的 Microsoft API(如 WPF、WCF 和 EntityFramework)的支持。此外,如果您只想为 Windows 进行开发,那么 .NET Framework 是不错的选择,它更加精致并且专为 Windows 设计。如果您是一名 C#/VB 开发人员,迫切希望为 Mac OS 或 Linux 进行开发,那么值得一看 Mono - 否则您可以放心地忽略它。

Mono API 兼容性

于 2012-10-27T17:23:01.773 回答
1

Mono 使用自己的 JIT、虚拟机等实现。使用 Mono 的主要原因是如果您想开发或移植托管程序到 Linux 或 OS X。如果您正在为 Windows 开发,请使用 Visual Studio 和 .net 框架。Mono 不太可能更快,但可能会出现更多错误,尤其是对于 GUI 设计。

使用 MS .net 的另一个原因是它已经被许多编写 .Net 程序的人测试过,因此您应该减少使用该平台的麻烦。

我在这里推测了一下,但可能使用 Mono 开发的唯一充分理由是,如果您想将程序或程序的一部分移植到 Linux 或 OS X。很可能您仍需要做一些工作,但这是一个开始。即便如此,我还是会考虑将 .net 代码移植到 Java,因为 Java 在其他操作系统上有更好的支持,并且有一些工具和公司可以进行此类转换。

也看看这个问题:

.NET 和 Mono 的开发差异

于 2012-10-27T17:18:01.010 回答