Technologie : La première version utilisable de Java sort en 1995. Oui, depuis, de l’eau a coulé sous les ponts. Voici tout ce qu’il faut savoir sur cette brique indispensable pour les développeurs, et les métiers.
La première version utilisable de Java sort officiellement le 23 mai 1995. La genèse du projet remonte à 1991, avec le projet Oak, mené par une petite équipe de Sun Microsystems. Trois ingénieurs, Naughton, Sheridan et Gosling, montent une petite équipe, Green Team. L’objectif est de créer l’informatique du futur. Rapidement, ils travaillent sur la convergence numérique des terminaux et des ordinateurs. Les premiers prototypes matériels et logiciels sont des set-top TV. En 18 mois, l’équipe développe un OS, les interfaces et un langage de programmation dédiés. Une mascotte est même trouvée : Duke (sic !).
Le langage, appelé Oak, est principalement créé par James Gosling. Il sert à coder les applications, l’OS et les interfaces. Oak s’inspire du langage C, et repose déjà sur une machine virtuelle pour le rendre portable. Oak est renommé en Java.
Les bases de Java, et donc de Oak, étaient, selon James Gosling :
- un langage le plus simple possible ;
- un ensemble d’API pour faciliter le développement ;
- une abstraction du langage : indépendance matérielle et système, un code pour être exécuté partout ;
- une intégration dans les navigateurs web (qui venaient d’arriver sur le marché) ;
- une exécution de plusieurs threads / tâches simultanément.
Après plusieurs années de développement, Java se stabilise peu à peu début 1995. Pour montrer les capacités de Java, et notamment sur internet, James Gosling développe un navigateur, WebRunner. Les premières applets sont montrées en public début 1995.
Rapidement, Java et les applets se répandent sur le web et les navigateurs. Peu à peu, le langage sera décliné en plusieurs éditions pour les développeurs : le desktop, l’entreprise avec Java SE et Java EE. Les différents Java sont développés et distribués par Sun, puis par Oracle, après le rachat du premier par le second.
Aujourd’hui, nous avons principalement deux éditions de Java :
- OpenJDK ;
- Jakarta EE.
OpenJDK est le Java « standard ». Jakarta EE est le nouveau nom de Java EE depuis que Oracle a donné la plateforme à la communauté.
publicité
Rythme d’évolutions, support
Le rachat de Java par Oracle a permis de mettre de l’ordre dans le développement du langage. Le langage évolue lentement et par des versions big bang qui apportait beaucoup de nouveautés, mais aussi des casses de compatibilités. Entre Java 6 et 7, il a fallu attendre cinq ans, entre Java 8 et 9, trois ans. Oracle a décidé de faire évoluer régulièrement Java, tous les six mois, pour fluidifier les améliorations et éviter d’attendre plusieurs années entre deux versions.
Oracle veut canaliser l’effort :
- recentrer le développement sur quelques éléments clés ;
- raccourcir les délais de déploiement des versions, ne plus faire de big bang à chaque version ;
- définir clairement les licences commerciales et open source ;
- établir un modèle de tarification simplifiée.
Le changement de cadence a été acté en 2017. Oracle a annoncé deux types de versions : un Java LTS et un Java non LTS. LTS signifie support long terme. Cela signifie que cette version sera supportée huit ans par Oracle. La version LTS sort tous les trois ans.
Les applets Java pour les navigateurs sont obsolètes. Java s’est imposé sur le smartphone grâce à Android, ayant été le langage référence de l’OS avant que Google ne mette en avant Kotlin.
publicité
Java c’est quoi ?
Java est un langage orienté objet avec une syntaxe hérité du C. Ce n’est pas un langage natif, mais interprété. Pour exécuter un code Java, il faut une machine virtuelle : la Java Virtual Machine. Le compilateur sert à produire le bytecode, qui sera exécuté par la JVM. L’intérêt de cette approche, dès l’origine, se résume au slogan « write once, run anywhere ». On écrit le code une fois et il s’exécute partout. En pratique, ce n’est pas toujours le cas, mais la popularité du langage est venue par la portabilité du code.
Comme tout langage objet, Java utilise des classes. Il s’agit d’un langage fortement typé. Le développeur doit donc typer les variables durant le développement. Pour gérer la mémoire et les ressources, Java utilise les mécanismes du ramasse-miettes (Garbage Collector).
Java est multithread. Cela signifie que l’on peut créer x threads indépendants les uns des autres. Bien entendu, le multithreading exige une programmation rigoureuse, une structure du code claire et une bonne gestion des accès et de la mémoire.
Dans le langage, on retrouve tout ce qui caractérise un langage moderne : classes, variables, boucles, constructeurs, interfaces, classes abstraites, annotations, gestion des exceptions, les couches d’accès aux données, les expressions lambdas.
publicité
Installer Java
Pour développer et utiliser Java, il faut tout d’abord installer une OpenJDK. Vous avez le choix : Oracle, OpenJDK (la version open source et gratuite), Red Hat, Microsoft, etc. Les JDK sont disponibles pour macOS, Linux, Windows et les principales plateformes matériels (x86, ARM).
Une fois installé, vous pouvez exécuter directement une app Java (fichier JAR) via le lanceur Java.
Pour installer Java, vous pouvez passer par l’installeur graphique ou par le terminal.
Comment développer en Java ?
Pour développer en Java, rien de plus simple : installer un IDE. Un des meilleurs IDE du marché est IntelliJ IDEA (JetBrains), Eclipse ou NetBeans. Aujourd’hui, un des IDE les plus utilisés est Visual Studio Code (Microsoft). Il suffit d’installer les extensions Java et on dispose d’un IDE complet. Vous pouvez aussi utiliser l’IDE officiel de Google : Android Studio (basé sur IntelliJ IDEA).
En quelques minutes, votre environnement de développement Java est prêt !
Pourquoi Java reste populaire ?
Java bénéficie d’une communauté de développeurs très importante. Il est un des langages enseignés dans les formations et les écoles d’informatique. Des millions d’applications et de back-end d’entreprise fonctionnent en Java. Et il faut les maintenir et assurer leur bon fonctionnement, notamment en migrer les JVM et les JDK. Ce patrimoine applicatif est tellement important, notamment dans les grandes entreprises, que Java restera pour de nombreuses années un des langages les plus recherchés. Chaque année, en France, ce sont des milliers de développeurs Java qui sont recherchés.
Java, depuis cinq ans, a réussi à se redynamiser : nouvelles API, retrait des API les plus anciennes, optimisation du code (Java était critiqué pour la profusion du code à écrire), des compilateurs et des JVM entièrement réécrits et optimisés. La performance et la lourdeur de l’environnement Java étaient deux critiques récurrentes. Aujourd’hui, un projet comme GraalVM offre à Java une JVM de nouvelle génération très performante.
Java est longtemps resté en retrait des architectes cloud et des conteneurs. Quarkus, initié par Red Hat, permet de déployer les applications et les environnements Java directement des clusters Kubernetes, avec aussi la capacité à proposer de la compilation native. Ce framework est actuellement l’un des plus dynamiques de l’écosystème Java.
Des frameworks tels que Spring permet de créer des applications d’entreprise tout en masquant une partie du code du langage.
Newsquotidien.com