JavaFX - pas encore mort

Note du traducteur.
Récemment, j'ai publié sur le site Web habr des traductions en russe de plusieurs leçons JavaFX ,.
Et un de mes lecteurs m'a demandé: « Est-ce que quelqu'un utilise ça maintenant? "
Il y a une semaine, j’ai vu un article de blog de Stephen Chin et j’ai décidé qu’il répondait très bien à la question de mon lecteur.

Stephen Chin - Java Champion et l'un des auteurs du livre récemment publié, « The Definitive Guide to Modern Java Clients with JavaFX », a aimablement permis de publier une traduction de son article.



Nous avions plusieurs noms de candidats que nous et notre éditeur avons trouvés pour notre nouveau livre JavaFX. Mon préféré était JavaFX - pas encore mort. Je pense que cela décrit assez exactement ce que beaucoup d'entre nous ressentent depuis longtemps pour JavaFX, mais notre éditeur a opté pour notre version facultative du «Guide définitif des clients Java modernes avec JavaFX» (Le guide complet des clients Java modernes avec JavaFX). Bien que ce soit un bon titre, ce n'est clairement pas la même chose. Quelle couverture pensez-vous est la meilleure?

Beaucoup de gens pensent que le logiciel client Java est mort; Cependant, JavaFX est toujours bien vivant grâce à une utilisation plus importante que jamais, à davantage de plateformes et au support de la communauté. Voici trois raisons principales pour lesquelles vous pourriez également envisager d'utiliser JavaFX pour l'application cliente suivante:

  1. Langage multiplateforme et mobile
  2. Emballage natif sans soudure
  3. Vaste communauté de développeurs

Langage multiplateforme et mobile


JavaFX a toujours été un framework multiplateforme qui fonctionne aussi bien sur Mac OS X, Windows et Linux. Cependant, maintenant, il étend également cette prise en charge sur Android et iOS avec des technologies telles que les ports JavaFX et Gluon Mobile.

Gluon Mobile est une plateforme pour écrire, compiler et empaqueter des applications JavaFX pour le déploiement sur iOS et Android. Pour l'utilisateur final, votre application ressemble et se comporte exactement comme une application native.

Cela a toujours été un rêve pour les développeurs de clients Java, et grâce à la technologie de compilation croisée moderne, c'est maintenant facile à faire. En fait, vous pouvez déjà avoir des applications JavaFX installées sur votre téléphone, comme l'application très populaire créée par Stephan Janssen et utilisée pour la série de conférences technologiques mondiales Devoxx.

Emballage natif sans soudure


L'une des choses qui a historiquement freiné la technologie client Java est le problème de la distribution fiable des applications. Les navigateurs n'ont jamais été un lieu convivial pour le contenu intégré causant des problèmes de distribution comme Applets et Web Start (bien que Karakun ait corrigé la première façon, comme Hendrik l'a décrit dans son post Java Advent Calendar ).

Un moyen beaucoup plus fiable de regrouper des applications Java consiste à simplement associer le runtime Java à votre application et à le distribuer en tant qu'application native. Cela élimine toutes les dépendances de la version Java installée par l'utilisateur final, ce qui simplifie considérablement le test de votre application et la vérification de son fonctionnement fiable. De plus, grâce à la modularité introduite dans Java 9, vous pouvez fournir un sous-ensemble minimal de JRE pour minimiser la taille de votre application, y compris uniquement les composants utilisés.

Il existe plusieurs options d'emballage différentes:

  1. jpackage - Java 14 présentera à nouveau l'outil jpackage, qui fournit un moyen facile de compresser votre application et toutes les dépendances sur la ligne de commande. Une version préliminaire est déjà disponible.
  2. GraalVM est un runtime Java hautes performances qui fournit également une compilation à l'avance pour les applications Java. Cela vous permet de précompiler l'application Java en tant que binaire natif avec des temps de démarrage très rapides. Gluon fournit plus d'informations sur la façon de procéder .

Le résultat final pour votre utilisateur est un simple programme d'installation natif qui fonctionnera quels que soient les autres runtimes ou applications Java qu'ils peuvent installer. En fait, ils ne sauront probablement même pas que vous développez votre application client JavaFX.

Vaste communauté de développeurs


La grande chose à propos de l'écriture d'applications JavaFX est que vous pouvez vous connecter à 10 millions de développeurs dans le monde qui savent déjà écrire du code Java d'entreprise robuste. Cela signifie qu'il existe un grand nombre de personnes talentueuses qui peuvent écrire et maintenir une interface utilisateur, y compris probablement vous (le lecteur).

De plus, il existe une énorme communauté croissante de développeurs autour de JavaFX, dont beaucoup ont contribué au livre JavaFX susmentionné que nous venons de publier. Voici quelques-unes des personnes que vous devez suivre sur Twitter et sur lesquelles vous pouvez compter pour obtenir d'excellents conseils sur le développement d'un client Java:

  • Johan Vos est le fondateur de Gluon et l'un de mes éminents collaborateurs.
  • James Weaver est un gourou de l'informatique quantique et l'un de mes distingués collègues
  • Gail et Paul Anderson - auteurs et experts JavaFX
  • Bruno Borges - Expert Java chez Microsoft
  • Anton Epple - Expert JavaFX en Allemagne
  • Weiqi Gao - Expert linguistique et co-auteur JavaFX de longue date
  • Jonathan Giles - Expert Advisor et Guru for JavaFX GUI Elements
  • José Pereda est un expert mobile JavaFX et membre de la communauté espagnole
  • Sven Reimers - Chef de groupe d'utilisateurs Java et fan JavaFX
  • Eugene Ryzhikov - Expert Java mobile et co-fondateur de Gluon
  • William Antônio Siqueira est un membre de longue date de la communauté JavaFX et un membre de la communauté open source.

J'espère que vous êtes déjà inspiré pour créer votre prochaine application client JavaFX. Si vous avez besoin d'aide, n'hésitez pas à me contacter ainsi que mes co-auteurs ou de nombreux autres experts JavaFX de la communauté Java qui souhaitent vous aider.

Source: https://habr.com/ru/post/fr482420/


All Articles