跨平台桌面GUI的首选开发平台?

时间:2008-12-31 10:35:16

标签: .net user-interface mono gtk

this related question of mine的答案促使我为大多数后端服务选择Java(它是一个多组件系统)。现在,我不确定这对于跨平台桌面GUI应用程序是否也是一个不错的选择。我记得使用的Java桌面应用程序具有我不喜欢的非本机外观,但我不确定这是否取决于GUI工具包的选择而不是语言。

我的大多数GUI都是基于网络的,而桌面版的GUI将拥有相对较少的受众(管理员,开发人员和测试人员),因此我只能将我的时间预算的一小部分放在一边。不过,我想要原生外观并避免一堆依赖。

从我想要使用的GUI工具包开始,然后选择支持它的语言,这可能是最合适的。我所知道的跨平台的是:

  • GTK
  • QT
  • AIR(当它到达Linux时)

所以,例如,我可能会使用.Net / Mono的GTK#。我将面临什么样的依赖性问题?您是否建议将实际GUI与应用程序的其余部分分开,并在Linux上使用GTK,在Windows上使用本机,如Windows Forms,从而避免在Windows上安装GTK?

2 个答案:

答案 0 :(得分:4)

SWT是你的答案。我参与了一个使用SWT的项目,无论你投入什么,它看起来都很棒。如果您使用Java,那么您可能已经使用了SWT的最佳示例:Eclipse。它适用于GTK,WinForms,Cocoa,Qt甚至Tk。 哦!一旦你掌握了所有的基础知识,这将非常容易。此外,大多数组件都准备好了。 另外一件事,GT​​K和C#并不像你想象的那样独立于平台。

答案 1 :(得分:2)

作为Java和python服务的跨平台用户界面,Bruce Eckel是Flex的绝佳赞助商。 他在Artima上写了很多关于它的文章: