Java Swing 还在使用吗?是我找到的最新帖子,它是 4 岁(现在 11 岁),所以...
Swing 是否在专业环境中使用?我是一名学生,想知道它是否值得学习,或者它的日子是否已经过去。
(我不是在询问 Swing-AWT 的比较……只是在工作中 Swing 是否已经过时。)
Java Swing 还在使用吗?是我找到的最新帖子,它是 4 岁(现在 11 岁),所以...
Swing 是否在专业环境中使用?我是一名学生,想知道它是否值得学习,或者它的日子是否已经过去。
(我不是在询问 Swing-AWT 的比较……只是在工作中 Swing 是否已经过时。)
大多数现有的 GUI Java 代码库现在Swing
并且很可能会保持这种状态,直到代码库腐烂并且没有人再维护它。
大多数新的GUI java 代码库都在使用JavaFX
,它是现在的Swing
替代品,Java8
也是standard java library
现在的一部分。它允许CSS
皮肤、HTML5
元素,并且还有一个非常好的FXML
(XML/HTML 方言),允许非程序员“进入那里”并处理 GUI 布局等。它还具有SceneBuilder
免费/标准为您的程序自动生成的GUIdrag-n-drop
构建器。FXML
当我说FXML
可以extended JFrame class
用Swing
50 行FXML
. (我帮助迁移的最近项目)。
Swing
仍然被大量使用,并且将继续使用很长一段时间——毕竟,它是 Java 很长一段时间内的唯一选择。JavaFX
但是,它令人耳目一新,非常值得学习。
顺便说一句——Swing 构建在 AWT 之上——AWT 有很多问题,其中大部分被 java 项目 (OpenJDK/Oracle) 标记为“不会修复”。Swing 是为替换/修复 AWT 而构建的,但是有时您会将 AWT 对象结合到您的 Swing 应用程序中。哎呀,您有时会将 Swing 对象结合到您的 JavaFX 应用程序中。我不会费心学习 AWT,如果你学习 Swing,那么你大部分时间都在学习 AWT。Swing 与 AWT 的最大区别在于 Swing 组件以字母开头J
。例如:JFrame
vsFrame
等。
好吧,Intellij IDEA 的 UI 使用 Swing,所以我不会说它已经过时。诚然,我真的认为它可以进行大修(阅读:一些没有意大利面条代码的东西)。
绝对没错。传统的 Swing 应用程序仍受支持和增强。没有其他选择。如果您正在制作像 IDE 之类的应用程序,SWING 仍然是首选。新应用程序当然会有网络界面,但这实际上取决于应用程序的性质。没有通用规则。