JavaFX - Présentation

Rich Internet Applicationssont ces applications Web qui offrent des fonctionnalités et une expérience similaires à celles des applications de bureau. Ils offrent une meilleure expérience visuelle par rapport aux applications Web normales aux utilisateurs. Ces applications sont fournies sous forme de plug-ins de navigateur ou de machine virtuelle et sont utilisées pour transformer les applications statiques traditionnelles en applications plus améliorées, fluides, animées et attrayantes.

Contrairement aux applications de bureau traditionnelles, les RIA ne nécessitent aucun logiciel supplémentaire pour fonctionner. Comme alternative, vous devez installer des logiciels tels que ActiveX, Java, Flash, en fonction de l'application.

Dans un RIA, la présentation graphique est gérée côté client, car elle dispose d'un plugin qui prend en charge les graphiques riches. En un mot, la manipulation des données dans un RIA est effectuée du côté serveur, tandis que la manipulation des objets associés est effectuée du côté client.

Nous avons trois technologies principales à l'aide desquelles nous pouvons développer une RIA. Ceux-ci comprennent les suivants -

  • Adobe Flash
  • Microsoft Silverlight
  • JavaFX

Adobe Flash

Cette plate-forme logicielle est développée par Adobe Systems et est utilisée pour créer des applications Internet riches. Parallèlement à cela, vous pouvez également créer d'autres applications telles que vecteur, animation, jeux de navigateur, applications de bureau, applications mobiles et jeux, etc.

Il s'agit de la plate-forme la plus couramment utilisée pour développer et exécuter des RIA avec un taux de pénétration du navigateur de bureau de 96%.

Microsoft Silverlight

Tout comme Adobe Flash, Microsoft Silverlight est également un cadre d'application logicielle pour développer et exécuter des applications Internet riches. Initialement, ce cadre était utilisé pour le streaming multimédia. Les versions actuelles prennent également en charge le multimédia, les graphiques et l'animation.

Cette plateforme est rarement utilisée avec un taux de pénétration du navigateur de bureau de 66%.

JavaFX

JavaFX est une bibliothèque Java à l'aide de laquelle vous pouvez développer des applications Internet riches. En utilisant la technologie Java, ces applications ont un taux de pénétration du navigateur de 76%.

Qu'est-ce que JavaFX?

JavaFX est une bibliothèque Java utilisée pour créer des applications Internet riches. Les applications écrites à l'aide de cette bibliothèque peuvent s'exécuter de manière cohérente sur plusieurs plates-formes. Les applications développées à l'aide de JavaFX peuvent fonctionner sur divers appareils tels que les ordinateurs de bureau, les téléphones mobiles, les téléviseurs, les tablettes, etc.

Développer GUI Applications en utilisant le langage de programmation Java, les programmeurs s'appuient sur des bibliothèques telles que Advanced Windowing Toolkit et Swing. Après l'avènement de JavaFX, ces programmeurs Java peuvent désormais développer efficacement des applications GUI avec un contenu riche.

Besoin de JavaFX

Développer Client Side Applicationsavec des fonctionnalités riches, les programmeurs dépendaient de diverses bibliothèques pour ajouter des fonctionnalités telles que Media, contrôles d'interface utilisateur, Web, 2D et 3D, etc. JavaFX inclut toutes ces fonctionnalités dans une seule bibliothèque. En plus de ceux-ci, les développeurs peuvent également accéder aux fonctionnalités existantes d'une bibliothèque Java telles queSwing.

JavaFX fournit un riche ensemble d'API graphiques et multimédias et exploite les Graphical Processing Unitgrâce à des graphiques accélérés par le matériel. JavaFX fournit également des interfaces permettant aux développeurs de combiner animation graphique et contrôle de l'interface utilisateur.

On peut utiliser JavaFX avec des technologies basées sur JVM telles que Java, Groovy et JRuby. Si les développeurs optent pour JavaFX, il n'est pas nécessaire d'apprendre des technologies supplémentaires, car la connaissance préalable de l'une des technologies mentionnées ci-dessus sera suffisante pour développer des RIA à l'aide de JavaFX.

Caractéristiques de JavaFX

Voici quelques-unes des fonctionnalités importantes de JavaFX -

  • Written in Java - La bibliothèque JavaFX est écrite en Java et est disponible pour les langages qui peuvent être exécutés sur une JVM, qui incluent - Java, Groovy and JRuby. Ces applications JavaFX sont également indépendantes de la plate-forme.

  • FXML- JavaFX dispose d'un langage appelé FXML, qui est un langage de balisage déclaratif semblable au HTML. Le seul but de ce langage est de définir une interface utilisateur.

  • Scene Builder- JavaFX fournit une application nommée Scene Builder. En intégrant cette application dans des IDE tels qu'Eclipse et NetBeans, les utilisateurs peuvent accéder à une interface de conception par glisser-déposer, qui est utilisée pour développer des applications FXML (tout comme Swing Drag & Drop et DreamWeaver Applications).

  • Swing Interoperability - Dans une application JavaFX, vous pouvez intégrer du contenu Swing à l'aide du Swing Nodeclasse. De même, vous pouvez mettre à jour les applications Swing existantes avec des fonctionnalités JavaFX telles que le contenu Web intégré et les médias graphiques riches.

  • Built-in UI controls - La bibliothèque JavaFX répond aux commandes de l'interface utilisateur à l'aide desquelles nous pouvons développer une application complète.

  • CSS like Styling- JavaFX fournit un style de style CSS. En utilisant cela, vous pouvez améliorer la conception de votre application avec une simple connaissance du CSS.

  • Canvas and Printing API- JavaFX fournit Canvas, un style d'API de rendu en mode immédiat. Dans le packagejavafx.scene.canvasil contient un ensemble de classes pour canvas, à l'aide desquelles nous pouvons dessiner directement dans une zone de la scène JavaFX. JavaFX fournit également des classes à des fins d'impression dans le packagejavafx.print.

  • Rich set of API’s- La bibliothèque JavaFX fournit un ensemble complet d'API pour développer des applications GUI, des graphiques 2D et 3D, etc. Cet ensemble d'API comprend également les capacités de la plate-forme Java. Par conséquent, à l'aide de cette API, vous pouvez accéder aux fonctionnalités des langages Java tels que les génériques, les annotations, le multithreading et les expressions Lambda. La bibliothèque traditionnelle des collections Java a été améliorée et des concepts tels que les listes et les cartes observables y ont été inclus. En utilisant ces derniers, les utilisateurs peuvent observer les changements dans les modèles de données.

  • Integrated Graphics library - JavaFX fournit des classes pour 2d et 3d graphique.

  • Graphics pipeline- JavaFX prend en charge les graphiques basés sur le pipeline graphique à accélération matérielle connu sous le nom de Prism. Lorsqu'il est utilisé avec une carte graphique ou un GPU pris en charge, il offre des graphiques fluides. Si le système ne prend pas en charge la carte graphique, le prisme utilise par défaut la pile de rendu logiciel.

Histoire de JavaFX

JavaFX a été développé à l'origine par Chris Oliver, quand il travaillait pour une entreprise nommée See Beyond Technology Corporation, qui a ensuite été acquis par Sun Microsystems en 2005.

Les points suivants nous donnent plus d'informations sur ce projet -

  • Initialement, ce projet a été nommé F3 (Form Follows Functions) et il a été développé dans le but de fournir des interfaces plus riches pour le développement d'applications GUI.

  • Sun Microsystems a acquis la société See Beyond en juin 2005, elle a adapté le projet F3 en JavaFX.

  • En 2007, JavaFX a été officiellement annoncé à Java One, une conférence mondiale sur le Web qui a lieu chaque année.

  • En 2008, Net Beansintégré avec JavaFX était disponible. La même année, le JavaStandard Development Kit pour JavaFX 1.0 a été publié.

  • En 2009, Oracle Corporation a acquis Sun Microsystems et la même année, la prochaine version de JavaFX (1.2) a également été publiée.

  • En 2010, JavaFX 1.3 est sorti et en 2011 JavaFX 2.0 est sorti.

  • La dernière version, JavaFX8, a été publiée en tant que partie intégrante de Java le 18 mars 2014.