在Mono中学习C#

问题描述:

Mono在Linux和OS X上的C#开发有多坚实?我一直在考虑学习C#,并想知道使用Mono的学习是否足够。在Mono中学习C#

我一直在使用单声道2年以上。工作是windows和.Net,家庭在GNU/Linux上是单声道的。我已经能够同时运行GUI和ASP.NET应用程序,并且没有来自同一个SVN存储库的问题。我必须做的唯一改变是连接字符串。 ASP.NET在mod_mono下适用于apache和xsp2。一些.NET 3.5片段不存在,但绝对适用于.NET 2.0及更早版本。

Monodevelop很好,我相信调试器也运行良好。

它应该是很好。它现在支持C#3.0。我通常尝试坚持瞄准2.0,但它非常稳定。

Winforms和ASP.NET都适合我。唯一需要考虑的是目前不支持WPF。

要学习语言,你会很好。单声道有一些库缺失,但这并不妨碍您学习该语言。您可以在Mono Project Page: FAQ找到更多信息。

.NET 2.0已完全实现,如果您打算只使用.NET 2.0,它几乎可以保证它能够正常工作(甚至是WinForms):)其他版本仍在大量开发中,因此您必须检查Mono的网站。

我不能说Mono的OSX支持,但它用于Linux中的一些相当大的项目,例如BansheeF-SpotMonodevelop是一个相当不错的IDE可用。

+0

自从这篇文章以来,OSX支持已经有了显着的进步,Monodevelop现在正式发布用于该平台,而Banshee for OSX正处于测试阶段,我相信。 – 2009-09-16 17:31:22

我认为使用mono学习C#非常可行。我没有单声道的实际操作经验,但平台看起来非常稳定,单声道在很多commercial and open source applications中使用。

Mono刚刚宣布它完全支持.NET 3.5,Mono总体上处理大部分问题。很多工作都是由志愿者完成的,所以你仍然会遇到会引发问题的角落案例,但他们对bugzilla和邮件列表非常敏感。

他们刚刚添加的另一个强大功能是能够附加到远程从Windows中的Visual Studio在Linux/Mac上运行的进程。这使您能够调试您可能遇到的任何系统特定问题。

Mono在OSX上非常稳定。缺乏堆栈的唯一部分是GUI,Gtk#或Winforms既不能在Linux上工作,也不能在Linux上工作。

单声道事实上是.NET for Unix

我不建议,但我鼓励你学习C#使用单声道。通过这种方式,您可以使用.NET跨平台方法。

现在使用Xamarin Mono工具(http://xamarin.com/),您还可以设计跨平台的移动应用程序,在Android,iOS和WindowsPhone(以及更多)之间共享代码。