10

我想学习如何有效地使用Swing Application Framework。我发现的大多数示例都是博客条目,它们只是解释了扩展 SingleFrameApplication 并覆盖其启动方法的好处,但仅此而已。Sun 的文章已有将近两年的历史,项目本身的介绍也是如此,从那时起显然有一些演变。

是否有任何最新的和详尽的教程/HOWTOs 可用?当然有 JavaDoc,但很难从那里获得全局。任何指针表示赞赏。

更新:我意识到项目站点上有一个邮件列表存档。虽然有些笨拙(与 StackOverflow 相比;),但它似乎非常活跃。仍然很遗憾,任何地方都没有真正的教程。信息散布在各处。

更新 2:让我澄清一下 - 我在使用 Swing(小部件工具包)本身时没有遇到问题,我说的是它的Application Framework,它应该可以简化应用程序生命周期(启动、退出以及它们之间发生的任何事情)之类的事情、动作管理等 - 即大多数 Swing 应用程序都需要的东西。让这样的框架成为Java 的标准部分很酷。唯一的问题是了解它的用途。

更新 3:对于感兴趣的人,在项目论坛上刚刚讨论了 JSR 296 的当前状态和未来。不久:当前版本 1.03 被认为是相当可用的,API 不稳定,它将更改为Java 7 中的最终版本。包名称也将更改,因此 Java 7 不会破坏在 SAF 上创建的当前应用程序。

更新 4: Karsten Lentzsch 在上述论坛上表示:“我怀疑它是否可以包含在 Java 7 中;我会投反对票。”。我宁愿不质疑这位伟大大师的诚意,不让任何有缺陷的东西溜进核心 JDK 肯定是明智之举,但坦率地说,这是一个奇怪的情况——他是 JGoodies Swing Suite 的作者,该套件在一定程度上是 JDK 的商业竞争对手JSR 296,是委员会的成员,该委员会将决定是否将这个 JSR 包含到标准 Java 中。我之前写过的 JSR 295 Beans Binding也是如此。

鉴于 SAF 的当前状态,我认为最好的解决方案是将当前实现包装到一个“自制”框架中,然后该框架可以适应对现有 API 的可能更改。

4

5 回答 5

5

首先,我个人的建议是不要使用最新版本的 SAF,这更像是“正在进行重构”(现在已经 6 个月没有发展了......)

我更喜欢“1.03”版本,虽然不完美,但更加稳定和可用(我的意思是在现实生活中的应用程序中)。

的确,关于 SAF 的资源是稀缺的。我记得我沿着这条路走:

  • 阅读有关它的JavaOne 2007 研讨会 ;这给出了一个很好的关于它的图片

  • 使用它并在需要时阅读 javadoc

  • 有时会查看源代码以缓解 javadoc 的不足

邮件列表目前不是很活跃(但真正的流量自年初以来刚刚重新开始一点点,但是,自 2008 年 8 月或 9 月以来我没有看到任何 Sun 代表!)

去年,在与 SAF 进行了大约一年的练习后,我在 Jazoon'08 上做了一个演讲,你可以在我的博客上找到幻灯片。该演示文稿更多地是关于我在使用该框架时收集的提示和技巧。

有时我也不得不自己修补一些问题,因为许多问题是长期存在的(有些对我来说不重要,还有一些其他问题)。

我记得在瑞典的一次会议上看到(未参加)关于 SAF 实践的另一个演讲,抱歉无法记住更多细节。也很有趣。

这几乎就是它的存在(据我所知)。

于 2009-02-10T23:17:36.393 回答
3

Netbeans 6.5具有可以为您提供良好启动的框架应用程序。只需在 IDE 中创建一个新项目,然后选择 Java > Java Desktop Application。

于 2009-02-10T13:27:49.523 回答
0

从来没听说过。我决定在它成熟(或死亡)之前避免使用摇摆应用程序框架。我决定改用jgoodies库来等待 Sun 为摇摆开发者做点什么。

于 2009-02-10T13:03:44.200 回答
0

您可以查看SwingWiki,其中包含一系列最佳实践和教程,尽管它已经有大约两年没有更新了。

于 2009-02-10T13:11:02.637 回答
0

虽然过去两年 Swing 确实发生了一些演变,但基本面并没有太大变化。我将从 Sun 自己的教程开始。

如果您想要书籍,那么通常的嫌疑人(McGraw Hill,O'Reilly)和其他知识渊博的人可以提供大量书籍。有些书用它的旧名称“Java 基础类”或 JFC 来引用 Swing。

于 2009-02-10T22:40:45.683 回答