是否有比Swing更好的Java应用程序框架?

时间:2009-02-14 03:19:56

标签: java saf

我打算在一些业余爱好Java项目上工作。我做过一些小规模的项目,所以我熟悉语言本身并使用Swing构建GUI。我想让我的工作不那么特别,也许会找到一些可能在现实世界中有用的工具。

NetBeans现在捆绑了Swing Application Framework,这似乎是一个非常有用的工具。它有助于弥合了解如何创建JFrame以及如何在更大的应用程序的上下文中有效地使用JFrame之间的鸿沟。问题是,有大量的API完全没有记录,并且几乎没有关于如何使用它的文档。常见问题解答中只有两个问题,邮件列表几乎已经死了,我甚至无法判断项目是否正在积极开发或是否已被放弃。我已经设法在很大程度上基于项目主页上发布的two-year-old JavaOne presentation来启动和运行它。

还有更好的选择吗?是否有另一个工具/库/ API以更新手友好的方式执行相同类型的操作?请注意,我目前正计划开发桌面应用程序,而不是在寻找像Spring和Hibernate这样的J2EE框架。

5 个答案:

答案 0 :(得分:5)

用于创建良好桌面的basic principles与创建Web或企业应用程序相同。因此,Spring的核心或其他框架(如OSGiPicoContainer)可以很容易地在J2EE之外使用。例如,Eclipse uses OSGi作为其内部框架。 Model-View-Presenter(MVC)模式的最初用途是针对Smalltalk GUI小部件。

事实上,就我自己而言,我首先发现并使用“IoC”框架(早在Spring之前),正是因为我正在寻找一个框架并组织桌面应用程序开发的原则。

RCP上的更新

我看到有些人推荐Eclipse RCP或Netbeans。我做了很多Eclipse RCP开发,对于某些类的应用程序,它很棒。但是,学习曲线非常陡峭且功能集可能超出您的需要。请记住您调查的任何框架。

答案 1 :(得分:4)

答案 2 :(得分:3)

对于GUI库,我倾向于SWT。 Eclipse维护它并将其用于IDE。我相信Azureus也使用它。在多个平台上看起来很好并且非常易于使用。

答案 3 :(得分:2)

如果我今天开始使用基于Java的桌面应用程序,我会使用JavaFX。

http://en.wikipedia.org/wiki/JavaFX

答案 4 :(得分:0)

您也可以使用Qt的Java绑定。 Qt是一个多平台的C ++框架,在我看来,它是GUI设计中最易读的对象模型之一。

查看Trolltech (Nokia) Qt website

您可以使用Java Web Start功能查看demo(也包含源代码)。它给出了关于可以做什么和不可以做什么的好印象,以及源代码的外观。