Java Swing还在使用吗?

时间:2010-06-08 01:44:36

标签: java user-interface swing awt

我打算制作一个Java Swing应用程序,并想知道是否仍在使用Swing或者是否已将其替换为其他内容。

提前致谢!

11 个答案:

答案 0 :(得分:23)

Swing仍然在使用....但是有AWT !!

AWT:

<强>优点:

  • 速度:使用本地对等体可加快组件性能。
  • 外观和感觉:AWT组件更接近地反映了他们运行的操作系统的外观和感觉。

<强>缺点:

  • 可移植性:使用本机对等体会创建特定于平台的限制。某些组件可能在某些平台上根本不起作用。
  • 第三方开发:包括Borland和Sun在内的大多数组件制造商都基于Swing组件开发新组件。可用的AWT组件要小得多,因此给程序员带来了创建自己的基于AWT的组件的负担。
  • 功能:AWT组件不支持图标和工具提示等功能。




摇摆:

<强>优点:

  • 可移植性:纯Java设计提供了更少的平台特定限制。
  • 行为:纯Java设计允许Swing组件采用更大范围的行为,因为它们不受AWT使用的本地对等项的限制。
  • 功能:Swing支持更广泛的功能,如图标和组件弹出工具提示。
  • 供应商支持:Swing开发更加活跃。 Sun为Swing提供了更多的精力。
  • 外观:可插拔的外观让您可以设计一组GUI组件,这些组件可以自动拥有任何操作系统平台(Microsoft Windows,Solaris,Macintosh等)的外观。它还可以更轻松地对Java程序进行全局更改,从而提供更高的可访问性(例如选择高对比度颜色方案或更改所有对话框中的所有字体等)。

<强>缺点:

  • 性能:Swing组件通常比AWT更慢,更慢,因为它们都是纯Java和各种平台上的视频问题。由于Swing组件处理他们自己的绘画(而不是像Windows上的DirectX那样使用本机API),您可能会遇到图形故障。
  • 外观:即使Swing组件设置为使用它们运行的​​操作系统的外观,它们也可能看起来不像它们的原生组件。



More Reading..

答案 1 :(得分:13)

是的,它仍在使用中。

更新:它仍在使用中。

答案 2 :(得分:12)

Swing仍然存在且得到很好的支持。

人们在第一次出现时讨厌摇摆的大部分原因都不再仅仅因为摩尔定律以及改进的JVM而变得有效。摇摆应用程序没有loger感到生涩和不负责任,并且积累的微小改进导致更专业的GUI。

它还值得关注快速开发和原型设计的“groovy / swing”组合。

答案 3 :(得分:10)

我们仍然使用它。并非所有东西都是一个网络应用程序,到目前为止已经有一些暂时的替代品(例如SWT,其中写有日食)
SWT有一个本机层,它包含对本机窗口层的底层调用。它仅适用于有限的一组平台,当然还需要一些第三方共享库。我冒昧地说,SWT应用程序远远少于Swing应用程序。

答案 4 :(得分:9)

是。 StackOverflow上的1 out of 120 questions大约是Swing enter image description here

答案 5 :(得分:3)

是的,它仍然在使用中。该库仍然是JRE的一部分,并且可能是未来的方式。还有其他选择。例如,如果需要丰富的UI,您可能需要查看JavaFX;或在您的应用程序中使用SWT。也许你想要某种3D效果,你需要研究像jpct或jmonkeyengine这样的3D引擎。自Swing世界软件以来,Java已经取得了一些进展。

答案 6 :(得分:3)

虽然swing仍然在使用,但我宁愿选择Eclipse RCP作为桌面应用程序的平台,因为它还提供了大量的插件。

答案 7 :(得分:2)

尽管我建议使用JavaFX,但是您仍然可以使用Java Swing。设计UI更加容易,因为SceneBuilder可以帮助您做到这一点。它也是较新的,因此需要更长的支持和发展。 Swing的优点是它已经问世很长时间了,因此您将找到有关Swing的更多教程和帮助,但JavaFX正在追赶。如果您想学习JavaFX,建议您在YouTube上跟随newboston的tutorial series

答案 8 :(得分:1)

摆动仍然是构建重量级的首选方式,例如Java中的“桌面”应用程序。如果您的代码在Web浏览器中运行,您可能会使用其他东西。但对于独立式桌面应用程序而言,它非常出色并且使用广泛。

答案 9 :(得分:1)

是的,它仍在使用中。需要一段时间才能习惯但是一旦你拥有它,它就是一个非常好的编写应用程序的框架。查看Webstart以部署您的应用程序。还有点像开始时的笨蛋,但是当你感到舒服时非常方便

答案 10 :(得分:0)

对于桌面程序,是的,Swing正在大量使用。然而,有很多选择,因为很多人认为Swing非常冗长且难以使用。 JavaFX值得一看