我的这个相关问题的答案使我为我的大多数后端服务(它是一个多组件系统)选择了 Java。现在,我不确定这对于跨平台桌面 GUI 应用程序是否也是一个不错的选择。我记得使用的 Java 桌面应用程序具有我不喜欢的非本地外观,但我不确定这是否取决于 GUI 工具包而不是语言的选择。
我的大部分 GUI 都是基于 Web 的,而桌面版的用户(管理员、开发人员和测试人员)相对较少,所以我只能留出一小部分时间预算来做这些。不过,我想要原生外观并避免一堆依赖项。
从我想使用的 GUI 工具包开始,然后选择支持它的语言可能是最合适的。我知道的跨平台的有:
- GTK
- qt
- AIR(当它出现在 Linux 上时)
因此,例如,我可能会将 GTK# 与 .Net/Mono 一起使用。我将面临什么样的依赖问题?您是否建议将实际的 GUI 与应用程序的其余部分分开并在 Linux 上使用 GTK,以及在 Windows 上使用原生的东西,例如 Windows Forms,从而避免必须在 Windows 上安装 GTK?