JavaFX
Créateur | Sun Microsystems |
---|---|
Développé par | Oracle et la communauté OpenJFX |
Première version | |
Dernière version | 12 () |
Version avancée | 13 () |
Dépôt | JavaFX sur GitHub |
État du projet | Actif |
Écrit en | Java, C++, C |
Environnement | Multi-plateforme |
Langues | Anglais |
Type | Bibliothèque logicielle |
Politique de distribution | Gratuit |
Licence | GPL |
Site web | https://openjfx.io/ |
JavaFX est un framework et une bibliothèque d'interface utilisateur issue du projet OpenJFX, qui permet aux développeurs Java de créer une interface graphique pour des applications de bureau, des applications internet riches et des applications smartphones et tablettes tactiles.
Créé à l'origine par Sun MicroSystems, puis développé par Oracle après son rachat et ce, jusqu'à la version 11 du JDK, c'est depuis lors à la communauté OpenJFX que revient la poursuite de son développement[1].
Cette bibliothèque à été conçu pour remplacer Swing et AWT, qui ont été développés à partir de la fin des années 90, pour pallier les défauts de ces derniers et fournir de nouvelles fonctionnalités (dont le support des écrans tactiles).
Le cycle de sortie d'une nouvelle version de JavaFX correspond à celui de Java, soit tous les 6 mois.
Historique
À ces débuts, les développeurs devaient utiliser le langage de script JavaFX Script pour pouvoir décrire une interface utilisateur et la bibliothèque ne permettait de concevoir que des applications internet riches.
Depuis la version 2.0, il s'agit d'une véritable API qui est proposé sous la forme d'une bibliothèque tierce et qui plus est, devient open source[2].
Avec l'apparition de la version 8 de Java (en mars 2014), JavaFX devient la bibliothèque de création d'interface graphique officielle du langage Java, le développement de son prédécesseur Swing (avec AWT) étant abandonné, excepté pour les corrections de bogues.
Depuis la version 11 de Java, le projet est dissocié du JDK, pour suivre son propre processus de développement. Toutefois, le numéro de version de JavaFX concorde avec celui du JDK pour indiquer sa compatibilité (car toute application JavaFX est basé sur le JDK).
Composants
JavaFX est composé des 7 modules suivants:
- javafx.base: Définit l'API de base
- javafx.controls: Définit la majorité des composants graphiques de l'API
- javafx.fxml: Définit l'API relative au langage FXML qui permet de décrire une interface utilisateur d'une manière alternative à l'écriture de lignes de code
- javafx.graphics: Définit l'API relative aux conteneurs, animations, effets visuels, formes 2D et 3D, images, impression, fenêtres, événements, robots, au support du CSS et à l'application
- javafx.media: Définit l'API dédié à la lecture de contenu audio et vidéo
- javafx.swing: Définit l'API qui fournit le support d’interopérabilité entre JavaFX et Swing
- javafx.web: Définit l'API dédié à l'affichage de contenu web (notamment un éditeur HTML et un moteur de rendu de pages web basé sur WebKit)
Versions
Numéro de version | Date de sortie | Note complémentaire |
---|---|---|
1.0 | Décembre 2008 | JavaFX Script ; le code source est fermé |
1.1 | Février 2009 | |
1.2 | Juin 2009 | |
1.3 | Avril 2010 | Intégration des diagrammes ; support du CSS |
2.0 | Octobre 2011 | Il s'agit désormais d'une API et non d'un langage de script |
2.1 | Avril 2012 | Support de MacOS |
2.2 | Août 2012 | Support de Linux ; nouveaux composants graphiques |
8.0 | Mars 2014 | Intégration de JavaFX au JDK 8 |
9.0 | Modularisation de JavaFX | |
10.0 | ||
11.0 | Septembre 2018 | Devient un module à part entière du JDK |
12.0 | Mars 2019 | |
13.0 | En développement |
Librairies
Des projets de librairies viennent compléter les fonctionnalités de JavaFX. Parmi eux, on peut citer les projets suivants:
- ControlsFX: ensemble de composants graphiques
- JFXtras: ensemble de composants graphiques
- JFoenix: fournit une interface dans le style Material design
- CalendarFX: permet de créer des calendriers
- FormsFX: permet de faciliter la création de formulaires
- TilesFX: ensemble de widgets pour le développement d'un tableau de bord
Annexes
Articles connexes
Liens externes
Références
- « JDK 11 update: JavaFX will be decoupled from the JDK », sur jaxenter.com, JAXenter, (consulté le )
- (en) « Repositories and Releases », sur OpenJDK Wiki, (consulté le )
- (en) « What is JavaFX ? », sur thoughtco.com, ThoughtCo., (consulté le )
- (en) « JavaFX 8: New and Noteworthy », sur SlidePlayer, (consulté le )