java - 用于桌面应用程序的Swing vs JavaFx
我有一个非常大的程序,目前正在使用SWT。 该程序可以在Windows,Mac和Linux上运行,它是一个包含许多元素的大型桌面应用程序。现在SWT有点老了我想切换到Swing或JavaFX。 我想听听你对三件事的看法。
我主要担心的是桌面GUI应用程序会有什么好处? (我在网上看了很多人都认为JavaFX和Swing一样好,但除了简单的意见火焰战争之外我没有看到很多有效的论据)。 它必须适用于Windows,Mac和一些流行的Linux发行版。
什么更干净,更容易维护?
从头开始构建什么会更快?
我在我的应用程序中使用MVC方法,如果有任何帮助的话。
6个解决方案
140 votes
什么更干净,更容易维护?
在所有条件相同的情况下,可能是JavaFX - API在各个组件之间更加一致。 但是,这更多地取决于代码的编写方式,而不是用于编写代码的库。
从头开始构建什么会更快?
高度依赖于你正在建设的东西。 Swing有更多的组件(第三方以及内置)并且并非所有组件都已经进入新的JavaFX平台,所以如果你需要一些东西,可能会有一定数量的重新发明轮子 有点习惯。 另一方面,如果你想做转换/动画/视频内容,那么这在FX中更容易。
要记住的另一件事是(也许)外观和感觉。 如果您绝对必须拥有默认的系统外观,那么JavaFX(目前)无法提供此功能。 对我来说不是必须的(我更喜欢默认的FX外观),但我知道有些政策要求限制系统风格。
就我个人而言,我认为JavaFX是“即将到来”的UI库,它还没有完全存在(但不仅仅是可用的),而Swing作为边缘传统的UI库,目前功能齐全并且支持,但可能不会 未来几年这么多(因此外汇有可能在某些时候超过它。)
Michael Berry answered 2019-04-05T12:16:03Z
78 votes
正如Oracle所述,JavaFX是其基于Java的富