Java Swing est-il toujours utilisé? est le message le plus récent que j'ai trouvé, et il a 4 ans (maintenant 9 ans), alors ...
Swing est-il utilisé dans un environnement professionnel ? Je suis étudiante et je me demande si ça vaut la peine d'apprendre ou si sa journée est passée.
(Je ne demande pas une comparaison Swing-AWT ... juste si Swing est obsolète ou non sur le marché du travail.)
La majorité des interfaces graphiques existantes Java les bases de code sont Swing
et resteront probablement ainsi jusqu'à ce que la base de code pourrisse et que personne ne la maintienne plus.
Majorité de nouvea GUI Java les bases de code utilisent JavaFX
, qui est le remplacement de Swing
dans Java8
et fait partie du standard Java library
maintenant. Il permet de CSS
skinning, HTML5
éléments, et possède également un très joli FXML
(un dialecte XML/HTML) qui permet aux non-programmeurs de "pénétrer" et de travailler sur la disposition de l'interface graphique, etc. Il a également SceneBuilder
qui est une interface graphique gratuite/standard drag-n-drop
constructeur qui génère automatiquement FXML
pour votre programme.
Je ne plaisante pas quand je dis que FXML
peut remplacer 3 000 lignes de extended JFrame class
code pour une interface graphique Swing
, avec 50 lignes de FXML
. (projet récent que j'ai aidé à migrer).
Swing
est encore largement utilisé et continuera de l'être pendant longtemps - après tout, c'était le seul choix pour Java pendant un temps très long. JavaFX
, cependant, est agréablement agréable et mérite d'être appris.
En passant - Swing se construit sur AWT - AWT a beaucoup de problèmes, dont la plupart sont marqués comme "ne pas corriger" par le projet Java (OpenJDK/Oracle). Swing était conçu pour remplacer/corriger AWT, mais parfois vous allez épouser des objets AWT dans votre application Swing. Heck, vous allez parfois épouser des objets Swing dans votre application JavaFX. Je ne prendrais pas la peine d'apprendre AWT, si vous apprenez Swing, vous apprenez AWT pour La plus grande différence avec Swing vs AWT est que les composants Swing commencent par la lettre J
. EX: JFrame
vs Frame
, etc.
Eh bien, Intellij IDEA utilise Swing pour son interface utilisateur, donc je ne dirais pas qu'il est obsolète. Accordé, je pense vraiment qu'il pourrait utiliser une énorme refonte (lire: quelque chose de pas plein de code spaghetti) .
Absolument oui. Les applications swing existantes sont toujours prises en charge et améliorées. Il n'y a pas d'alternative pour cela. Et si vous faites des applications comme l'IDE, SWING est toujours préféré. La nouvelle application aura bien sûr des interfaces web, mais cela dépend vraiment de la nature de l'application. Pas de règles génériques.