对.NET语言的跨平台GUI编程的建议?

时间:2013-03-21 08:06:34

标签: .net user-interface

我是一名大学生,我打算在今年夏天开始一个开源的UML绘图项目,并在这里寻求有关.NET平台的建议。

首先,我在Windows上没有任何编程经验(几年前我在Visual Basic中做了一个Hello World ..),但我在Linux中知道很多语言(Python,Ruby,Erlang,Lisps,C, Java)等我在Linux开源项目上也有一些经验。

.NET编程是澳门许多政府工作的一项要求,该项目旨在制作一个可用的开源UML绘图项目,并试着尝试.NET(和Windows)编程。

虽然我有学习Windows编程的目的,但我仍然希望我的程序能够在Linux上运行(这是我最常用的环境)。所以我想在编程平台上提出一些建议:

  1. 在C#中开发跨平台的GUI程序并在Linux下以Mono运行是否会如此困难? (在这个UML绘图案例中)
  2. 我可以使用什么GUI库?我应该使用QT还是GTK +?或者微软世界的其他东西? (我对微软的事情知之甚少)
  3. 在linux中,我使用Emacs,Glade,命令行来编写程序。 Windows程序员(通常)在命令行中输入'javac'或'gcc'吗?我可以用什么IDE在Windows上开发.NET GUI程序?
  4. 感谢。

1 个答案:

答案 0 :(得分:1)

根据您的知识集,可能GTK#是您的最佳选择。它是跨平台的,基于GTK +。安装MonoDevelop / Xamarin Studio并创建一个GTK#项目。然后,您可以探索GTK#提供的内容。建议Mono为GTK#创建一个可视化设计器,这样您就不需要任何其他IDE /工具来创建UI。

Mono还支持WinForms作为另一个跨平台选项。但由于WinForms源自Microsoft,您可能需要使用Windows + Visual Studio来设计WinForms UI(或使用SharpDevelop)。一个名为NClass的基于WinForms的UML工具被移植到Mono,http://www.mono-project.com/Guide:_Porting_Winforms_Applications

Mono通过Qyoto也支持Qt,但是要开发你的UI,你需要几个工具。我不是Qt专家,所以我说不出多少。

已修改:有关详情,请访问http://www.mono-project.com/Gui_Toolkits