Java (technique)
Un article de Wikipédia, l'encyclopédie libre.
Java est le nom de marque d'une technique développée par Sun Microsystems : la « technologie Java™ ». Elle correspond à plusieurs produits et spécifications de logiciels qui, ensemble, constituent un système pour développer et déployer des applications. Java est utilisée dans une grande variété de plates-formes depuis les systèmes embarqués et les téléphones mobiles jusqu’aux serveurs, les applications d’entreprise, les superordinateurs et dans une moindre mesure pour les interfaces graphiques comme les applets Java du Web.
Depuis des années, Sun Microsystems appelle Java la « technologie Java » dans son ensemble. En pratique, beaucoup de programmeurs utilisent le mot « Java » pour désigner son langage de programmation, tandis que la plate-forme d’exécution est appelée « JRE » Java Runtime Environment, environnement d’exécution Java) et le système de compilation : « JDK » (Java Development Kit) plutôt que « compilateur Java ». Java est sous licence GNU GPL depuis novembre 2006.
Java est un des termes les plus connus du monde de l'informatique et de l'Internet, que ce soit des professionnels comme du grand public. Sa notoriété est telle que Sun a décidé de l'utiliser pour son symbole boursier au Nasdaq, symbole qui était SUNW à l'origine, et est devenu JAVA[1].
Sommaire |
[modifier] Produits et technologies majeures
[modifier] Langages de programmation
Via son langage intermédiaire (bytecode), la machine virtuelle Java peut exécuter différents langages de programmation (après compilation) :
[modifier] Plate-forme
[modifier] Kit de développement Java
[modifier] Implication humaine et économique
Java rassemble un nombre considérable de personnes et de sociétés, aux intérêts divers. Parmi les principaux :
- Sun, le créateur, réalise les versions principales (pour Windows, Linux, et téléphones), des outils de développement (Netbeans), anime une communauté de développeurs, ainsi que des comités de standardisation (les JCP : Java Community Process).
- La fondation Apache ; de nombreux projets java phares, dont certains sont intégrés à la plate-forme elle même ; un siège de Executive Comittee au JCP[2].
- La fondation Eclipse : cette fondation est la plus importante concernant Java et sa stratégie de développement dans laquelle Sun n'est pas présent.
- Des sociétés de stature internationale telles Google, IBM[3], Oracle ; Microsoft et Netscape ont également été des acteurs majeurs. Le cas de Microsoft est un peu particulier, puisque, si cette société a accompagné les débuts de cette technologie, c'était surtout dans le but de contrer ses concurrents[4].
- La quasi totalité des fabriquants d'appareils portables (avec une réserve pour Apple, qui n'en a pas équipé les IPod, par exemple)
- Le monde Open Source a longtemps été réservé, voire opposé, mais depuis le passage de Java en licence GPL ce n'est plus le cas ; RedHat, par exemple en est devenu un acteur majeur.
[modifier] Histoire
Le langage Java a débuté dans les années 1990 avec James Gosling qui souhaitait développer un langage de programmation indépendant de la plate-forme hardware. Oak (Traduction : Chêne) fut un échec.
Par la suite Bill Joy (co-fondateur de la firme Sun Microsystems) proposa une nouvelle version d’Oak appelée « Java » (mot d’argot américain signifiant café (l’île de Java en produit, les programmeurs ont la réputation d’en consommer beaucoup), l’équivalent en argot français est kawa). Son but était de pallier une déficience des langages de programmation en produisant un langage conçu pour des machines et des logiciels hétérogènes qu’englobe Internet. On trouve gratuitement sur le marché une machine virtuelle (Java Virtual Machine), un compilateur ainsi que de nombreux outils pour permettre la conquête du Web qui devra être celle de Java.
Après de très nombreuses modifications visant à améliorer le système, Java est devenu plus qu’une simple solution Internet, c’est dorénavant un langage utilisé pour toutes sortes de développements.
Java naquit en même temps que le Web, et toutes les qualités que requiert le Web étaient implémentées dans Java :
- un langage permettant un fonctionnement sur des machines structurées différemment.
- une nécessité de bande passante la plus minime possible, pour pallier l’étroitesse de celle offerte par le Web.
Un navigateur Java apparut dès 1994 (HotJava) qui, tout en intégrant Java, était capable de faire fonctionner les applets Java (applications Java exécutées par le navigateur).
Netscape fut l’un des éléments essentiels dans la création et l’implantation de Java dans le parc informatique, en intégrant Java dans son logiciel.
[modifier] L'origine
L'idée de départ a été de réduire le travail du serveur ainsi que la quantité de données transmises via le réseau, en confiant davantage de tâches à chaque ordinateur client.
[modifier] Java et Internet
[modifier] L'histoire récente
Sun a annoncé le 13 novembre 2006 que l’environnement Java serait sous licence libre GNU GPL (avec extension « ClassPath ») par étapes : immédiatement pour le code source du compilateur Java ainsi que pour celui de la machine virtuelle Java HotSpot[5]. En mai 2007, lors de la conférence JavaOne, c’est l’ensemble du code Java qui a été mis en Open Source (à l’exception de quelques rares parties fournies en format binaire pour l’instant encore). L’exception « ClassPath » permet d’utiliser cette JVM GPL sans pour autant que les applications soient elles aussi nécessairement sous licence GPL. Quelques temps auparavant Sun avait déjà mis en Open Source son serveur d’application Java EE 5 complet GlassFish.
[modifier] Utilisation par les applications graphiques
[modifier] Terminaux mobiles
[modifier] Disponibilité de l'environnement d'exécution
[modifier] Historique des versions
- 1.0 : Version initiale lancée en 1995
- 1.1 : 1997, ajout de jdbc pour les connexions aux bases de données, fichier Jar, introspection et sérialisation entre autres
- 1.2 : 1998, Playground : JDBC 2 et compilateur JIT
- 1.3 : 2000, Kestrel : Grandes améliorations de performances
- 1.4 : 2002, Merlin : JDBC 3, API de Logging et Java Web Start
- 5.0 : 2004, Tiger : Grandes améliorations du langage (boucle foreach, génériques, …)
- 6.0 : 2006, Mustang : meilleure intégration avec le système d’exploitation, avec les classes Desktop et Systrays
- 7.0 : Dolphin
[modifier] Performances
Bien qu’il puisse arriver dans des cas rares que les performances d'un langage interprété comme Java soient meilleures que celle d’un langage compilé en natif, ce n’est généralement pas le cas[6].
Cependant, la compilation juste-à-temps (JIT) permet d'améliorer les performances au niveau des langages compilés après la première exécution du code.
[modifier] Voir aussi
[modifier] Articles connexes
- Langage Java
- Sun Microsystems, entreprise à l'origine de Java
- Machine virtuelle Java
[modifier] Références
- ↑ Sun Microsystems to Change Stock Ticker Symbol to JAVA (annonce officielle) et Bonjour JAVA - Adieu SUNW : explications en français par Jonathan Schwartz, Chief Executive Officer and President Sun Microsystems, Inc.
- ↑ Apache And The JCP
- ↑ 2001 Eclipse
- ↑ Dans La Commission ouvre une procédure à l'encontre de Microsoft pour discrimination dans l'octroi de licences et refus de fournir des informations relatives à ses logiciels : La procédure engagée aux Etats Unis par le Department de Justce porte essentiellement sur les mesures prises par Microsoft pour protéger sa position dominante dans les systèmes d'exploitation pour micro-ordinateurs, en visant à affaiblir la position du navigateur internet Navigator de Netscape et le système Java de Sun.
- ↑ Clubic, 13 novembre 2006 http://www.clubic.com/actualite-65334-sun-ouvre-code-java-licence-gpl.html
- ↑ C GNU gcc benchmarks | Debian : AMD™ Sempron™ Computer Language Benchmarks Game
[modifier] Liens externes
- Sun Microsystems — Java (en)
- Java.net (en)
- Java.com
- Open Directory — Java
- Developpez.com — Java
- Jazoon - Where Java People meet
- MetricsAnalytics Sonar Plugin de Sonar qui permet de calculer la Qualité Totale d'un projet Java.