很多时候,当我阅读关于一些程序的文章时,无论是GNOME Do还是Banshee或其他什么东西,我经常看到人们写着他们使用mono——而且这似乎带有贬义。为什么会这样呢?这些评论是基于实际原因、意识形态原因还是其他原因呢?
有人认为Mono支持微软及其.Net平台。一些人认为这与Ubuntu的目标相悖,或者至少与他们个人的目标相悖,因此他们想要避免使用它。
抱歉用了一些含糊不清的词语,但我会保持客观。关于Mono是否真的这样做,甚至支持微软是好事还是坏事,这个讨论应该放在其他地方。
使用虚拟机的程序(如Java和C#编写的程序)在我的经验中往往比不使用虚拟机的等效程序占用更多内存。这种概括并不总是成立。虽然有些用户确实关心这个问题,但人们常常过度担心性能。
例如,我正在使用只有1GB内存的笔记本电脑:这曾经是巨大的。这台机器开始显得有点老旧,但我仍然可以舒适地运行大多数应用。拥有4GB内存的用户几乎不会注意到"内存占用过高"的问题,他们应该关注其他方面的问题。(而且我会在5年后回来笑那个4GB的数字。)
正如其他人所说,有两个主要原因:
1)意识形态:用户不习惯使用基于闭源的微软产品的Mono。然而,Mono本身是开源的。
2)专利:这曾经是一个重大关注点,但微软已经通过向ECMA 334和ECMA规范335 承诺社区许可证 来解决了这个问题。不幸的是,很多人对此并不了解。
我不使用Mono,因为:
我认为任何人都可以和应该使用Mono,但是不想要它的用户不应默认安装。