首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >桌面应用程序的Swing与JavaFx

桌面应用程序的Swing与JavaFx
EN

Stack Overflow用户
提问于 2013-05-22 22:49:22
回答 6查看 235.6K关注 0票数 204

我有一个非常大的程序,目前正在使用SWT。该程序可以在Windows、Mac和Linux上运行,它是一个包含许多元素的大型桌面应用程序。现在SWT有点老了,我想换成Swing或JavaFX。我想听听你对三件事的看法。

我主要关心的是哪种方式更适合桌面GUI应用程序?(我在网上看了看,很多人认为JavaFX和Swing一样好,但我没有看到多少有效的论点,除了简单的观点之战)。它必须在Windows、Mac和一些流行的Linux发行版上都能运行。

  • 什么将更干净、更易于维护?
  • 以及从头开始构建的速度更快?

我在我的应用程序中使用了MVC方法论,如果这有任何帮助的话。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2013-05-22 23:00:37

什么会更干净,更容易维护?

在所有条件都相同的情况下,可能是JavaFX --应用编程接口在各个组件之间更加一致。然而,这更多地取决于代码是如何编写的,而不是使用什么库来编写它。

和什么会更快从零开始构建?

高度依赖于您正在构建的内容。Swing有更多的组件(第三方的以及内置的),并且并不是所有的组件都已经进入更新的JavaFX平台,所以如果你需要一些定制的东西,可能会有一定程度的重新发明轮子。另一方面,如果你想做过渡/动画/视频之类的东西,那么在FX中这就容易了几个数量级。

另一件要记住的事情是(也许)外观和感觉。如果你一定要有默认的系统外观,那么JavaFX (目前)不能提供这个。对我来说不是很重要(我更喜欢默认的FX外观),但我知道有些政策要求对系统样式进行限制。

就我个人而言,我认为JavaFX是“正在兴起的”UI库,现在还不是很好用(但不仅仅是可用的),而Swing是边界遗留的UI库,目前功能齐全并得到支持,但在未来几年可能不会有那么多(因此FX可能会在某个时候超过它)。

票数 160
EN

Stack Overflow用户

发布于 2014-02-18 04:13:31

正如甲骨文所说,JavaFX是其基于Java的富客户端战略的下一步。因此,以下是我针对您的情况推荐的方法:

维护更容易、更整洁的是什么

  • JavaFX在Swing的基础上引入了几个改进,例如,可以使用FXML标记UI,以及使用CSS创建主题。它具有编写模块化、整洁和可维护的代码的巨大潜力。

从头开始构建的速度会更快

  • 这在很大程度上取决于你的技能和你使用的工具。对于swing的
  • ,各种IDE提供了快速开发的工具。我个人认为最好的是NetBeans.
  • JavaFX中的图形用户界面构建器也支持各种IDE,尽管目前还没有Swing支持的那么成熟。然而,它对FXML和CSS中标记支持使得在JavaFX intuitive.

上进行图形用户界面开发

MVC模式支持

  • JavaFX与MVC模式非常友好,你可以清晰地将你的工作分离为:表示(FXML,CSS),模型(Java,域对象)和Swing中的MVC支持并不是很吸引人。您将看到的跨各种组件的流缺少consistency.

有关更多信息,请在此处查看甲骨文发布的关于JavaFX的这些常见问题解答。

票数 91
EN

Stack Overflow用户

发布于 2014-04-04 09:42:34

没有人提到这一点,但由于缺少"jfxrt.jar“支持,JavaFX不能编译或运行在甲骨文认为是”服务器“的某些体系结构上(例如Solaris)。坚持使用SWT,直到另行通知。

票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16694948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档