Accueil Finances personnelles 10 Différences entre JavaFX et Swing - dummies

10 Différences entre JavaFX et Swing - dummies

Table des matières:

Vidéo: AWT vs Swing vs JavaFX 2025

Vidéo: AWT vs Swing vs JavaFX 2025
Anonim

Si vous êtes un programmeur Java expérimenté, vous avez sans doute travaillé avec Swing pour créer des interfaces utilisateur. Oracle n'a pas complètement abandonné Swing - il n'est pas obsolète et les applications Swing continuent de fonctionner. Mais aucun travail n'est fait pour améliorer Swing, et Oracle a clairement fait savoir que JavaFX est l'avenir.

Voici dix différences fondamentales entre JavaFX et Swing.

Dans JavaFX, tout le monde est une étape

Dans Swing, la classe qui contient les composants de votre interface utilisateur est appelée frame et est définie par la classe JFrame. Un cadre est essentiellement une fenêtre vide à laquelle vous pouvez ajouter un panneau , qui sert de conteneur pour vos éléments d'interface utilisateur. Un panneau est défini par la classe JPanel.

Une application Swing est en fait une classe qui étend la classe JFrame. Pour afficher les composants de l'interface utilisateur, vous ajoutez des composants à un JPanel, puis ajoutez le panneau au cadre.

JavaFX utilise la métaphore d'un théâtre pour modéliser les conteneurs de niveau supérieur d'une application. Un stage (défini par la classe Stage) représente le conteneur de niveau le plus élevé - typiquement une fenêtre, mais sur certains systèmes d'exploitation, la scène peut représenter toute la surface d'affichage. Les contrôles individuels et les autres composants constituant l'interface utilisateur sont contenus dans une scène (définie par la classe Scene). Une application peut avoir plus d'une scène, mais une seule des scènes peut être affichée sur la scène à un moment donné.

Une scène contient un graphe de scène , , qui est le concept le plus important de JavaFX. Le graphe de scène est une collection de tous les éléments qui composent une interface utilisateur - groupes, mises en page, contrôles et formes. Ces objets sont appelés nœuds et sont tous dérivés de la classe Node. La classe Node possède de nombreuses fonctionnalités et fonctionnalités utiles qui sont automatiquement mises à la disposition de tout objet que vous pouvez ajouter à votre interface utilisateur. Par exemple, la classe Node définit une méthode setRotate qui vous permet de faire pivoter n'importe quel nœud dans le graphe de la scène.

Dans JavaFX, les gestionnaires de disposition sont des nœuds

Dans Swing, une mise en page est associée à un JPanel. Le JPanel de haut niveau donne la disposition de base pour le cadre. Si vous souhaitez imbriquer des mises en page supplémentaires dans la mise en page de niveau supérieur, vous devez créer des JPanels supplémentaires, définir leurs mises en page associées, puis les ajouter à la mise en page de niveau supérieur.

Dans JavaFX, les mises en page sont des sous-classes de la classe Node, tout comme les contrôles et les formes. Les mises en page contiennent une collection de noeuds, et n'importe quel noeud contenu dans une mise en page peut être n'importe quel type de noeud: un contrôle, une forme ou une autre mise en page.Ce système est beaucoup moins lourd que l'association de mises en page de Swing avec des panneaux.

JavaFX a amélioré la gestion des événements

JavaFX et Swing utilisent la gestion des événements pour répondre aux événements d'entrée utilisateur. Cependant, vous trouverez que les événements dans JavaFX sont mieux pensés et plus cohérents que leurs équivalents dans Swing. Mais la principale raison pour laquelle la gestion des événements est améliorée dans JavaFX est due à sa dépendance aux propriétés.

JavaFX prend en charge les propriétés

JavaFX prend en charge les concepts de propriétés et utilise largement les propriétés de ses classes. En termes simples, une propriété est une variable dont la valeur peut être observée. Vous pouvez enregistrer un écouteur avec n'importe quelle propriété, ce qui vous permet d'écrire du code qui est automatiquement déclenché à chaque modification de la propriété. En outre, vous pouvez lier les propriétés entre elles, ce qui signifie que si une valeur de propriété change, l'autre valeur de propriété change automatiquement avec elle.

Comme presque toutes les caractéristiques des éléments de l'interface utilisateur sont gérées via les propriétés, JavaFX fournit une gestion des événements inédite dans Swing. Par exemple, dans JavaFX, vous pouvez attacher un écouteur d'événement à la couleur d'une forme. Si la forme change de couleur, votre code d'écouteur d'événement est exécuté. Vous ne pouvez pas utiliser cette fonctionnalité, mais vous pouvez l'utiliser si nécessaire.

JavaFX est skinnable avec CSS

L'une des meilleures fonctionnalités de JavaFX est que vous pouvez contrôler le formatage avec des feuilles de style en cascade (CSS). À peu près tous les aspects de l'apparence de votre interface utilisateur peuvent être définis par une règle de style, et vous pouvez facilement permettre à l'utilisateur de sélectionner laquelle de plusieurs feuilles de style disponibles à appliquer à la scène. Ainsi, vous pouvez changer l'apparence entière de votre application avec un seul appel de méthode.

JavaFX a des contrôles plus cohérents

En général, vous trouverez que la hiérarchie de contrôle JavaFX est plus complète que celle de Swing. Les deux ont tous les contrôles de base - boutons, cases à cocher, boîtes à liste déroulante, et autres. Mais JavaFX possède plusieurs contrôles intéressants que Swing n'a pas, tels que le contrôle TitledPane et le contrôle Accordion qui organise plusieurs contrôles TitledPane dans une pile. Et le fait que tous ces contrôles soient skinnables par CSS leur donne un énorme avantage sur Swing.

JavaFX a des effets spéciaux

Le javafx. scène. Le package d'effets contient un certain nombre de classes qui peuvent facilement appliquer des effets spéciaux à n'importe quel nœud du graphe de scène. Ces classes vous permettent d'appliquer facilement des ombres, des réflexions, des flous et d'autres effets visuels intéressants qui peuvent transformer l'apparence de votre interface utilisateur.

L'animation est plus facile dans JavaFX

L'animation est possible dans Swing, mais Swing ne fournit aucun support direct. Pour animer un composant Swing, vous devez configurer vos propres minuteurs et créer votre propre logique pour exécuter l'animation.

En revanche, JavaFX prend en charge les animations sophistiquées qui peuvent être appliquées à n'importe quel nœud du graphe de scène. Vous pouvez utiliser l'une des plusieurs classes de transition intégrées pour effectuer des animations courantes telles que des fondus, des rotations ou des trajectoires de mouvement.Vous pouvez également utiliser les classes KeyFrame et Timeline pour configurer facilement des animations personnalisées.

JavaFX prend en charge les périphériques tactiles modernes

Swing ne prend pas en charge les périphériques tactiles modernes. En revanche, JavaFX prend en charge les gestes tactiles courants tels que le défilement, le balayage, la rotation et le zoom. La gestion de ces événements dans JavaFX est aussi simple que la gestion de tout autre type d'événement: vous installez simplement un écouteur d'événement sur l'événement tactile, puis vous écrivez du code répondant de manière appropriée.

JavaFX n'a ​​pas d'équivalent à JOptionPane

Il ne serait pas juste de remplir complètement cette liste de dix différences avec des points qui favorisent clairement JavaFX. Voici un inconvénient mineur de JavaFX: Il n'a pas d'équivalent intégré à la classe JOptionpane de Swing, ce qui est très pratique pour afficher des messages d'alerte courts ou obtenir une simple entrée de l'utilisateur. Dans JavaFX, vous devez créer votre propre équivalent à cette classe utile.

10 Différences entre JavaFX et Swing - dummies

Le choix des éditeurs

Comment envoyer une vidéo et des photos avec Flip Video - Dummies

Comment envoyer une vidéo et des photos avec Flip Video - Dummies

Après avoir pris photos et vidéos d'événements dans votre vie avec votre caméra Flip Video, vous pouvez les envoyer par e-mail à vos amis et aux membres de votre famille. Le partage de films et d'images que vous capturez et créez en envoyant un message e-mail vous permet de toucher et de toucher quelqu'un avec vos créations, même si vous êtes à proximité ...

Comment enregistrer le son séparément pour votre film numérique - Les mannequins

Comment enregistrer le son séparément pour votre film numérique - Les mannequins

Ont parfois besoin d'un réalisateur enregistrer le son en utilisant un appareil séparé de l'appareil photo, enregistrer le son séparément, puis synchroniser le son sur la vidéo plus tard, lors de l'édition. Habituellement, la raison en est d'augmenter la qualité du son enregistré car de nombreuses caméras n'enregistrent pas le son aussi bien que ...

Comment enregistrer une vidéo avec un caméscope Flip - Les nuls

Comment enregistrer une vidéo avec un caméscope Flip - Les nuls

Enregistrant des vidéos avec votre caméra Flip est comme facile comme 1-2-3 (et 4). Avant d'enregistrer une vidéo, vérifiez les indicateurs d'état de votre Flip pour vous assurer que votre caméra est complètement chargée et qu'elle a suffisamment de temps d'enregistrement pour capturer la vidéo que vous voulez filmer. Pour vérifier le niveau de charge de la batterie de votre Flip (ou ...

Le choix des éditeurs

Mot Raccourcis des symboles 2016 - des mannequins

Mot Raccourcis des symboles 2016 - des mannequins

Dans Word 2016 vous pouvez insérer des symboles communs en utilisant ces raccourcis clavier. Utilisez ces raccourcis clavier au lieu de la commande Insérer → Symbole pour insérer des symboles typographiques communs. Symbole Raccourci Tableau de bord Alt + Ctrl + signe moins En tableau Ctrl + signe moins Copyright Alt + Ctrl + C Marque déposée Alt + Ctrl + R Marque Alt + Ctrl + T Ellipsis Alt + Ctrl + période

Mot Raccourcis des symboles 2016 - mannequins

Mot Raccourcis des symboles 2016 - mannequins

En fonction de la manière dont vous choisissez d'utiliser Word 2016, vous risquez de devoir faire face pour un symbole spécial. Avec ces raccourcis clavier, vous pouvez insérer des symboles communs dans Word 2016. Utilisez ces raccourcis clavier au lieu de la commande Insérer → Symbole pour insérer des symboles typographiques communs. Symbole Raccourci Tableau de bord Alt + Ctrl + signe moins En tiret ...

Mot Trucs et astuces pour les tables 2013 - mannequins

Mot Trucs et astuces pour les tables 2013 - mannequins

Dans Word 2013, le texte se déverse dans un tableau sur une cellule base de la cellule. Vous pouvez taper un mot, une phrase ou même un paragraphe. Tout ce texte reste dans la cellule, bien que la cellule change de taille pour accueillir de plus grandes quantités de texte. Vous pouvez mettre en forme la cellule d'une table comme n'importe quel paragraphe de Word, en ajoutant même des marges ...

Le choix des éditeurs

Sexe For Dummies Cheat Sheet - les nuls

Sexe For Dummies Cheat Sheet - les nuls

Que vous vous considériez comme un Don Juan, une Lady Chatterly, ou un novice sexuel , tout le monde peut tirer le meilleur parti du sexe avec un peu plus de connaissances. Vous devriez savoir que les préliminaires sont quelque chose que vous devriez prendre en considération avec chaque interaction que vous et votre partenaire avez, ainsi que la façon de garder les choses ...

Mots et significations liés à la ménopause - mannequins

Mots et significations liés à la ménopause - mannequins

Bien que ce soit loin d'être une liste complète des termes que vous pourriez entendre être utilisé lorsque la ménopause est discutée, les cinq termes essentiels suivants devraient vous aider à comprendre les bases. HRT (hormonothérapie substitutive): Un traitement pour compléter les hormones que vous perdez pendant la ménopause - généralement une combinaison d'œstrogènes, ...

Symptômes qui indiquent que la ménopause est proche - mannequins

Symptômes qui indiquent que la ménopause est proche - mannequins

La plupart des femmes commencent à éprouver des symptômes de ménopause déséquilibrés, alors qu'ils ont encore des règles. Si vous ressentez un ou plusieurs des symptômes suivants, consultez votre médecin - vous pouvez être en train d'aborder le changement. Peau sèche ou cheveux Pensée floue (difficulté à se concentrer) Flutters du cœur (battements de cœur rapides) ...