Connexion / Inscription Account

Applications cloud-native

Un framework Java, qu'est-ce que c'est ?

Jump to section

Un framework Java™ est un bloc de code prérédigé qu'utilisent les développeurs pour créer des applications avec le langage de programmation Java.

Les frameworks Java sont propres au langage de programmation Java. Il s'agit de plateformes Java destinées au développement d'applications logicielles et de programmes Java.

Un framework Java est un bloc de code prérédigé et réutilisable. Les développeurs peuvent l'utiliser comme modèle pour créer des applications en y ajoutant du code personnalisé selon les besoins.

Les frameworks sont conçus pour être utilisés et réutilisés plusieurs fois de sorte que les développeurs puissent programmer leurs applications sans avoir à écrire le code en partant de zéro.

Les frameworks Java peuvent inclure des classes prédéfinies (telles que des catégories d'objets) et des fonctions utilisables pour traiter, ajouter et gérer des périphériques matériels, ainsi qu'interagir avec les logiciels du système. Tout dépend du type de framework, du niveau de compétences du développeur Java, de ses préférences et de la fonction prévue pour l'application.

Java, qu'est-ce que c'est ?

Java est un langage de programmation orientée objet qui date de 1995. Les développeurs utilisent Java pour programmer des applications qui vont s'exécuter à l'intérieur des limites du domaine dans lequel elles se trouvent.

Attention à ne pas confondre Java et JavaScript, un langage de programmation différent développé à la même époque par une autre entreprise. Le développement Java permet de créer des applications qui s'exécutent dans des navigateurs ou sur les systèmes nus, machines virtuelles ou conteneurs des serveurs. De son côté, JavaScript fonctionne uniquement dans les navigateurs.

Définitions : bibliothèque, framework et interface de programmation d'applications

La bibliothèque représente une fonction d'une application, le framework est le squelette de l'application, et ces deux composants sont rassemblés et mis à disposition de l'utilisateur au moyen de l'API. Un framework peut inclure une bibliothèque, un compilateur ainsi que d'autres programmes utilisés dans le processus de développement. Si le framework est bien conçu, le développeur n'a pas besoin de se préoccuper des portions de code qui se répètent dans un domaine ou une application.

Bibliothèque

Une bibliothèque est une collection de routines ou de ressources précompilées fréquemment employées (classes, modèles, données de configuration, etc.), utilisable par un programme sur un ordinateur. Au lieu d'écrire le code de cette fonction à chaque exécution d'une tâche, vous pouvez utiliser des routines et les appeler lorsque la tâche doit être effectuée. Lorsqu'il a besoin d'une ressource, le programme appelle la bibliothèque correspondante.

Framework

Un framework peut être une collection de bibliothèques. À la différence des bibliothèques qui sont appelées par un programme, c'est le framework qui appelle une action. Le contrôle est inversé. Le framework contient déjà le modèle, ou la trame, des éléments nécessaires. Il peut donc appeler les ressources dont il a besoin (les trous à remplir dans le code) sur la base de ce qu'il contient déjà.

API (interface de programmation d'applications)

Un framework est semblable à une interface de programmation d'application (API). Techniquement, les frameworks incluent des API. Les frameworks sont une base pour la programmation, alors que les API donnent accès aux éléments pris en charge par les frameworks.

Frameworks Java les plus utilisés

Il existe plusieurs frameworks Java. Ce sont les compétences du développeur et les exigences de l'application ou du site web qui déterminent les frameworks à utiliser. Voici quelques exemples de frameworks Open Source parmi les plus utilisés :

  • Quarkus, un framework Java pour l'ensemble de la pile informatique qui fonctionne parfaitement avec les infrastructurescloud-native basées sur des microservices
  • Grails, écrit dans le langage de programmation Groovy, qui fournit aux frameworks d'applications web des vues pour les plug-ins HTML et CSS
  • Hibernate, un framework de mapping objet-relationnel utilisé pour la gestion des bases de données relationnelles qui peut exécuter des requêtes SQL à l'aide d'API fournies par Java Database Connectivity (JDBC)
  • Google Web Toolkit (GWT), qui relie les équipes de développement de logiciels front-end et back-end

Il existe d'autres frameworks Java couramment utilisés :

  • Vaadin, avec des frameworks axés sur les interfaces utilisateurs
  • Play, qui rationalise le développement d'applications web et fonctionne bien avec le langage de programmation Scala
  • Apache Struts, axé sur les applications d'entreprise, qui fonctionne bien avec les techniques asynchrones JavaScript et XML (AJAX), un moyen utile de mettre à jour des sections de pages web sans tout actualiser
  • JavaServer Faces (JSF) d'Oracle, qui fournit aux développeurs back-end des frameworks front-end

Quarkus, un framework Java pour toute la pile

Il s'agit d'une pile Java native pour Kubernetes conçue pour les machines virtuelles Java (JVM) et la compilation native. Quarkus optimise le langage Java pour Kubernetes, qui devient alors une plateforme efficace pour les environnements cloud, sans serveur et Kubernetes.

La solution d'injection de dépendances de Quarkus utilise la spécification CDI (Contexts and Dependency Injection). Quarkus inclut aussi un framework d'extension qui permet de l'enrichir et de configurer, de démarrer et d'intégrer un framework dans votre application. Il est aussi simple d'ajouter une extension qu'une dépendance. Vous pouvez sinon utiliser les outils de Quarkus.

Les outils qui prennent en charge les frameworks Java

Red Hat JBoss Enterprise Application Platform logo

Plateforme pour le développement de services basés sur Java.

Red Hat Codeready product logo

Environnement de développement intégré (IDE) certifié basé sur Eclipse.

Red Hat Runtimes

Ensemble de produits, d'outils et de composants pour les applications cloud-native.

Vous ne savez pas encore tout sur Java et les applications cloud-native...