Plateforme JavaPlateforme Java
La plateforme Java (the Java Platform en anglais, plateforme Java 2 anciennement) est un standard de facto de plateforme logicielle, produit par Sun Microsystems, puis Oracle Corporation, permettant de développer et d'exécuter des programmes écrits en langage Java indépendants de tout processeur et de tout système d'exploitation, conformément à la technologie Java. Toute plate-forme Java se compose principalement d'un moteur d'exécution (appelé une machine virtuelle Java, ou 'JVM') et d'un compilateur fourni avec un ensemble de bibliothèques standards dont il existe plusieurs implémentations pour divers matériels et systèmes d'exploitation, de façon que les programmes Java puissent s'exécuter de façon identique sur chacun d'entre eux. Chaque version de plateforme Java répond à des spécifications normalisées dans les Java Specification Requests ou (JSR). Plusieurs versions de cette plateforme[2] cohabitent mi-2015, avec des JVM propres, Oracle implémentant et proposant notamment ses propres implémentations : HotSpot pour Java SE, serveur Glassfish pour Java EE. À l'instar de la plateforme Microsoft .NET ou de l'environnement Eclipse qui ciblent plusieurs langages, la plateforme Java vise à supporter d'autres langages de programmation que son langage natif Java. Plateforme ou framework ?Le terme Java Platform est avant tout une dénomination commerciale. Sa désignation comme plateforme plutôt que Framework se justifie cependant par l'intégration, avec les bibliothèques logicielles constituant le framework Java, de la JVM qui permet d'exécuter les programmes Java sur différents OS. Ainsi, chaque plate-forme Java ne se limite pas à une bibliothèque de composants mis à disposition, elle se caractérise de surcroit par sa faculté à exécuter des logiciels. Le terme de framework Java doit ainsi être réservé plutôt à des outils logiciels complémentaires enrichissant Java avec des bibliothèques complémentaires, telles que Spring framework. Machine virtuelle JavaLa machine virtuelle Java (en anglais Java virtual machine ou JVM) est un appareil informatique fictif (qui exécute des programmes compilés sous forme de bytecode Java. Cet appareil fictif est émulé par un logiciel spécifique à chaque plate-forme ou couple (machine/système d’exploitation) et permet aux applications Java compilées en bytecode de produire les mêmes résultats quelle que soit la plate-forme, tant que celle-ci est pourvue de la machine virtuelle Java adéquate. Éditions et versions de plateformesContenu et numérotation des plateformesChaque plate-forme Java est constituée de plusieurs programmes, chacun d'entre eux implémentant une JSR qui apporte l'une des fonctionnalités de l'ensemble des capacités de la plate-forme. Par exemple, l'un d'entre eux appelé le compilateur Java permet de convertir les codes source Java en bytecode Java (un langage intermédiaire destinée à la JVM (Java Virtual Machine ou machine virtuelle Java)) est fourni par le JDK (Java Development Kit). Un autre élément, appelé le JRE (Java Runtime Environment) implémente habituellement la JVM grâce à un compilateur JIT (Just In Time) qui convertit à la volée le bytecode intermédiaire en un code natif pour la machine. Chaque plate-forme, ou édition Java 2, est ainsi désignée par :
Éditions Java 2Il existe, dès la version 1.2 de Java, plusieurs distributions (edition en anglais) de la plate-forme Java[3], ce pour chaque version successive de Java. On retrouve essentiellement :
Chacune de ces déclinaisons est considérée comme constituant un framework à part entière. Versions et historiqueLes premiers environnements Java datent de 1995, mais c'est en 2000 avec la version 1.2 du langage qu'est évoquée pour la première fois la notion de plate-forme Java, Sun introduisant alors deux déclinaisons, ou frameworks :
Sun les qualifie alors de plateforme Java 2 par opposition aux premières générations 1.0 et 1.1. Toutes les versions ultérieures, de J2EE 1.2 à Java SE ou Java EE 7 restent désignées sous le qualificatif de plateformes Java 2[5], bien que le '2' ait été depuis officiellement abandonné. En 2006 apparaissent les premières versions pour Windows 64 bits (notées x64) sur Java6 (JDK & JRE v1.6.0.4)[6]. Puis Oracle a annoncé en la sortie de Java 7 pour le mois d'août de cette même année; début 2012 cette version était toutefois toujours préconisée à la communauté de développeurs uniquement. Java 8 est quant à lui sorti en . Plateforme Java SELa plateforme Java Standard Edition a connu les versions publiques suivantes (des versions mineures ultérieures pouvant être commercialisées par exemple dans le cadre de Oracle EBS) :
La sortie d'une version 1.9, initialement planifiée fin [10], a finalement eu lieu en . À partir de cette date, Oracle annonce une nouvelle version de Java par semestre, aux mois de mars et septembre[11]. Plateformes Java EE et Java MELa plateforme Enterprise Edition (Java EE) en est quant à elle à sa version 7 mi-2015 (Java EE 7 SDK Update 1), et fonctionne avec les JDK 6 ou 7[12], et la plateforme Mobile Edition (Java ME) à sa version 8.1 (SDK v. 8.1)[13]. Oracle répertorie 20 implémentations logicielles[2] de cette plateforme mi-2015, incluant ses propres distributions dénommées 'Glassfish'. Les numéros de versions de ces plateformes sont ainsi ceux de leur SDK. Failles de sécurité
Langages supportésÀ l'instar de la plateforme Microsoft .NET qui s'ouvre à plusieurs langages, la plateforme Java vise à supporter d'autres langages de programmation que son langage natif Java, notamment des langages de script :
Notes et références
|
Portal di Ensiklopedia Dunia