Is Java Swing still in use?是我最近发现的一篇文章,它有4岁(现在12岁),所以.
在专业环境中使用Swing吗?我是一个学生,想知道它是否值得学习,或者它的一天是否已经过去了。
(我不是在问Swing-AWT comparison...just在劳动力中Swing是否过时。)
发布于 2014-06-27 01:32:00
大多数现有的GUI代码库都是Swing,很可能会一直保持到代码库腐烂,没有人再维护它为止。
大多数新的GUI代码库都使用JavaFX,这是Swing在Java8中的替代,现在是standard java library的一部分。它允许CSS蒙皮,HTML5元素,还有一个非常好的FXML (XML/HTML的方言),它允许非程序员“进入”那里并处理GUI布局等等。它还有SceneBuilder,它是一个免费/标准的GUI drag-n-drop构建器,可以自动为您的程序生成FXML。
当我说FXML可以用50行FXML替换一个Swing GUI的3,000行extended JFrame class代码时,我就不开玩笑了。(最近我帮助迁移的项目)。
Swing仍然被大量使用,并且将继续使用很长一段时间--毕竟,它是Java在很长一段时间内的唯一选择。然而,JavaFX令人耳目一新,而且非常值得学习。
AWT之上的Swing构建存在许多问题,其中大部分被java项目(OpenJDK/Oracle)标记为“惯用修复”。Swing是为替换/修复AWT而构建的,但是有时您会将AWT对象结合到Swing应用程序中。见鬼,您有时会将Swing对象与您的JavaFX应用程序结合起来。我不会费心学习AWT,如果你学秋千,你大部分时间都在学习AWT。Swing与AWT最大的区别是Swing组件以字母J开头。例:JFrame对Frame等。
发布于 2014-06-27 01:28:21
嗯,Intellij的UI使用Swing,所以我不会说它过时了。诚然,我真的认为它需要一个巨大的改革(阅读:一些不充满意大利面代码)。
发布于 2014-06-27 01:34:00
绝对是的。遗留swing应用程序仍然得到支持和增强。没有别的办法了。如果您正在开发类似IDE的应用程序,SWING仍然是首选。新的应用程序当然会有网络接口,但这实际上取决于应用程序的性质。没有一般规则。
https://stackoverflow.com/questions/24442672
复制相似问题