Swing在很多方面都很好,为什么我们需要JavaFX呢?
JavaFX的技术部分将有助于设计UI,还有一个语言部分可以使UI更容易编写.
JavaFX技术带来了2D场景图和视频功能.Afaik这些也将普遍提供给java.它们是用于创建具有花哨和交互式图形UI的客户端应用程序的良好进步.2d场景图应该可以创建更多仍然响应的图形繁重的应用程序.
JavaFX语言是以编程方式创建UI的更好方法.Java Swing代码可能非常冗长,而相同的JavaFX代码将更小,更易于维护.闭包支持使创建事件处理程序更容易.设置的不确定性分配使元素的配置更容易.原生列表语法使添加组件更容易.
请注意,我还没有真正编写任何JavaFX,但我已阅读代码并注意正在发生的事情.我建议您自己尝试一下,找出烹饪方法.
我认为Staale的答案是一个好的开始,但我会补充......
如果使用JavaFX
1)如果您有兴趣开发移动或电视应用程序(注意这还没有发布)
2)如果您正在与在Photoshop中创建应用程序外观的图形设计师合作,并且您希望能够直接导入其外观.
3)如果使GUI污秽丰富对你很重要.(因此,如果您希望面板淡入或淡出,或根据需要滑动)
如果使用Swing
1)您正在创建一个主要用于桌面的应用程序.
2)性能很重要,你知道你在做什么(所以如果你正在编写IDE,Swing将是一个更好的选择)
3)您正在寻找可以构建的RPC(富客户端平台).