从技术上讲,创建一个基于 javafx/groovyfx 的 griffon 应用程序已经“有可能”有一段时间了。
现在的 swing 与 javafx 相比如何?
后者是否可以普遍推荐用于没有遗留包袱的新应用程序?
有什么需要注意的问题吗?
一般情况下,griffon + javafx/groovyfx 的关系如何?
JavaFX 是 Swing 的继承者,与 Swing 相比有很多优势,包括:
所有节点(例如 UI 组件、形状、图像、容器)都驻留在其中的场景图。这提供了在 UI 中操纵任何节点的属性的能力,结果会影响其包含的节点。例如,可以通过对 Group 应用旋转变换来将包含一些图像的 Group 作为一个单元旋转。将此与 Swing 进行比较,后者的 UI 由两个独立的世界组成:UI 组件和 Java2D。
WebView 节点是一个 WebKit 端口,可让您在场景图中嵌入 Web 浏览器。
CSS 可用于 UI 皮肤
FXML 可用于与应用程序逻辑分开定义 UI。SceneBuilder,其输出为FXML,是一个绘制UI的工具。
目前有一些 Swing 开发人员提到他们错过的功能,但您可以查看 OpenJFX 项目http://openjdk.java.net/projects/openjfx/并参与这个非常活跃的社区以影响和贡献未来JavaFX 的版本。
您可能对 CaptainCasa.com 的 Björn Müller 撰写的技术立场文件感兴趣,题为“我们为什么使用 JavaFX”,其中讨论了他们的架构,包括他们从 Swing 迁移到 JavaFX 的决定 http://captaincasa.blogspot.com/2013/ 01/为什么-我们-使用-javafx-paper.html
我希望这会有所帮助,并欢迎您访问 javafxcommunity dot com 上的 JavaFX 社区站点,以查看 JavaFX 开发人员的最新博客文章。
此致,James Weaver Oracle Java 技术大使
为什么、在哪里以及如何 JavaFX 有意义 http://www.oracle.com/technetwork/articles/java/casa-1919152.html
我可以推荐使用 javafx 而不是 swing。它易于学习,应用程序看起来更好。我在工作中使用 javafx 和 griffon 制作了几个应用程序,我没有遇到任何问题。