JRE, JSE, JDK, JavaEE, c’est quoi tout ça ?
quelles différences entre la JRE et le JDK ?
- JRE (Java Runtime Environment) : c’est un environnement d’exécution pour les programmes Java. Il contient :
- Composants nécessaires pour l’exécution des programmes.
- La machine virtuelle Java (JVM) et les bibliothèques de classes de base.
- JDK (Java Development Kit) : ce sont les outils pour développer. Il contient :
- la JRE
- Les outils de développement (compilateur Javac)
- Le gestionnaire d’archives Java (JAR), l’interpréteur Java ainsi que des bibliothèques et des fichiers de développement pour créer, tester et déboguer vos applications !
Pour faire simple, la JRE est indispensable pour exécuter des programmes Java alors que le JDK est utile pour développer.
Vous pouvez installer JRE pour exécuter des programmes, mais pour développer des programmes Java, vous devez installer le JDK.
Question fréquente : le JDK inclut-il la JRE ?
Oui, le JDK (Java Development Kit) inclut la JRE (Java Runtime Environment) !
Et ainsi que des outils supplémentaires pour le développement et la compilation des programmes écrits en Java.
Qu’est-ce-que la JSE ?
La Java SE (Java Standard Edition) fournit les outils de base pour :
- Développer
- Exécuter
- Déboguer
- Déployer
Il y a de nombreuses API avec des fonctionnalités telles que :
- les collections
- les threads
- les fichiers
- les entrées/sorties
- la gestion des réseaux
- la partie sécurité
- les IHM et les graphismes
- les services web
Donc, avec une JSE on peut créer des applications Java simples, comme des applications de bureau, applications mobiles, applications web et même des jeux,…
Quel est l’apport du JavaEE ?
la Java Enterprise Edition (Java EE) est une extension de Java Standard Edition (Java SE).
Elle fournit un ensemble d’outils et de technologies pour développer des applications d’entreprise.
Des fonctionnalités comme :
- les services Web
- les EJB (Enterprise JavaBeans)
- les servlets
- les JSP (JavaServer Pages)
- les JPA (Java Persistence API)
- les transactions
- la gestion de la sécurité
- la gestion des identités
- la gestion des messages
- la gestion des processus métier
- la gestion de la mise en production.
Java EE est orienté sur les besoins des applications d’entreprise et fournit des (API) fonctionnalités pour gérer ces exigences en matière de
- Disponibilité
- Fiabilité
- Sécurité
- Scalabilité.
JakartaEE c’est quoi ? Quelles sont les nouveautés ?
JakartaEE est la nouvelle plateforme Java pour les applications d’entreprise, elle remplace JavaEE citée plus haut. Il y a plusieurs nouveautés et améliorations apportées par Jakarta EE par rapport à Java EE :
- Open source : Jakarta EE est maintenant open source et est géré par la fondation Eclipse, cela signifie que les développeur.euse.s peuvent apporter leur contribution plus facilement et recevoir une assistance de la communauté.
- Microservices : cette plateforme est conçue pour faciliter la mise en place de microservices pour des applications plus flexibles et plus rapides.
- Conteneurs légers : Intègration de conteneurs légers (rapidité et applications moins lourdes).
- Modularité : Mise en place plus facile de l’aspect modulaire que la version Java EE (mise en œuvre et mise à jour des applications facilité).
- Interopérabilité : Elle renforcée pour communiquer avec d’autres technologies telles que Kubernetes, Docker, Cloud,…
- Conformité de l’interface de programmation : Respecte les normes de Java SE et facilite la migration.
Pour conclure
La JRE est inclue dans la JSE, donc la JSE est un package plus complet qui contient la JRE, ainsi que d’autres fonctionnalités pour le développement et la compilation d’application Java.
JavaEE inclut JSE qui inclut JDK qui inclut JRE qui inclut la JVM… pour simplifier !)