Java是开发跨平台GUI应用程序的最佳语言吗?[已关闭]

对于“最佳”,我打算代码不需要或只需要很少的特定于平台的调整。


答案 1

我强烈建议使用Java进行跨平台GUI开发。特别是,我推荐 Netbeans IDE 附带的 GUI 生成器。它非常简单,非常强大。您可以指向、单击和拖放以创建 GUI,并轻松自定义各种按钮和其他组件执行的操作。

我更喜欢Python作为一种语言,但是没有一个用于GUI开发的免费工具与此接近,对于我使用的其他语言来说,情况似乎也是如此。(我应该指出,QT为各种语言(如C和Python)提供了出色的GUI开发人员,但只有在开源项目上使用时才是免费的。

编辑:QT最近被重新授权为LGPL,因此您可以在商业应用程序中自由使用它。为此(PyQT)的Python绑定尚未重新许可,但已经创建了另一个名为PySide的项目来提供Python QT绑定。


答案 2

我个人鄙视模拟本机GUI的整个概念,这是Java GUI扎根的地方。无论你走到哪里,它都不会在家里,而是让你成为各地的游客,经常需要翻译。Eclipse GWT是一个更好的工具包,可以更好地利用本地资源,但它仍然认为人们喜欢编写Java代码,而讨厌使用Java应用程序,想想看:你喜欢桌面上的哪些Java应用程序?

在我看来,Tk在你选择运行它的任何操作系统上都是一样丑陋和有限的,Qt也是如此。

Mono需要一个很好的尝试,因为它是回答“为什么Linux很糟糕”这个问题的一种方式,如果你还记得那个古老的帖子bi Miguel de Icaza。Mono附带了一组成熟的小部件和Apis,并且不会为了为您提供可移植性而尝试限制您可以执行的操作。

Silverlight接近可移植,并且具有出色的界面定义语言,但是无法访问系统,即使在同一台计算机上,您也必须在服务器和UI之间拆分应用程序才能克服它。

Adobe AIR是一只狗,本地系统访问并不容易。

如果我能够选择,我倾向于完全避免GUI,并尝试使用Web服务器,甚至是本地Web服务器,以及Json,JQuery和所有这些东西。我发现我可以有更多的选择,并且比使用本机小部件更有效率。这结合了使用真实语言服务器端的优势和GUI中JavaScript的奇妙无序的亲和力。


推荐