很快,我们将需要开发一个 GUI 来为我们的 EAI 解决方案创建配置(老实说,更像是脚本)。想想一个典型的工作流编辑器。实际流程的可视化很可能是一个完全自定义的工作,无论是在 Swing、SWT 还是 JavaFX 2 中。我在选择时遇到的困难是自己做所有其他事情还是使用富客户端平台。
特别是,我注意到 JavaFX 2 受到了很多关注,并且似乎真的被 Oracle 推动为 Java GUI 领域的下一件大事。演示看起来很有趣,也许这个更新的 API 更关注生产力,而不是 Swing 倾向于强加的大量样板代码。使用获得大量支持的新技术似乎是未来维护的安全赌注。
使用 RCP 对这个项目有一定的好处。无论我们选择 Eclipse 还是 NetBeans 作为平台,拥有用于查看底层 (XML) 配置、版本控制等的现有插件/模块将提供强大的功能,并且工作量最少。我也喜欢在同一个 GUI 中让我们的软件项目类型与 Java 项目相邻的想法。即使是简单的东西,如窗口管理和自定义排列面板,也可以由 RCP 更好地处理,这是我们可以做的。
所以现在的问题是,什么样的技术或其组合是可行的?据我所知,我的选择是:
- 蚀。不过,我不太热衷于使用 SWT,因为我更熟悉 Swing。NetBeans 也是我的主要 IDE,我最熟悉它。它也总是感觉更直观。
- 网豆。这将允许在 Swing 中开发自定义组件。对我来说学习曲线较低。
- NetBeans + JavaFX 2。这个想法对我很有吸引力...使用 NetBeans 实现 RCP 的优点,使用 JavaFX 2 实现自定义组件。JavaFX 2 显然与 Swing 集成,但在 NetBeans 中这能做得如何?
- Swing 或 JavaFX 2. 所有的 GUI 自己工作还是使用一些现有的框架来获得 RCP 提供的大部分功能。这似乎是很多工作,但也提供了极好的控制。我有点讨厌在 Swing 中尝试这个。JavaFX 2 是否适合这一点?
基本上,我唯一的 GUI 经验是在小型应用程序上使用 Swing。这是我第一次去寻找可以保证 RCP 的东西。但是 JavaFX 2 似乎是前进的方向,我不想错过那艘船。如果 Swing 可能即将退出市场,我更愿意加入更新的技术。
如果有人可以分享他们的经验,尝试过 NetBeans + JavaFX 2 之类的东西,或者更接近 JavaFX 的前沿,并且可以推荐/不鼓励将其用于我最感兴趣的这类事情。
我意识到这是一个有点悬而未决的问题,但我真的想不出一个更合适的地方。我不是在寻找“什么是最好的 RCP/JavaFX 比 Swing 更好”的辩论。我正在寻找在这种情况下使用/反对使用它们的有效点。