Technos

Java 23 vient de sortir, mais à quoi sert encore ce langage aujourd’hui ?

Walter White (Breaking Bad) en train de boire le café de Gale Boetticher

Le saviez-vous ? — La nouvelle version de Java, Java 23, vient de sortir ! Cette version intermédiaire du langage, entre deux LTS (support à long terme), est officiellement disponible depuis ce mardi 17 septembre.

Mais alors que Java approche de ses 30 ans, est-il encore pertinent pour les développeurs d’aujourd’hui ?

# En partenariat avec JetBrains

Java a-t-il encore sa place dans l’écosystème des développeurs ?

Avec l’essor sur le marché depuis plusieurs années de langages comme Python (néanmoins plus vieux que Java !), JavaScript ou encore Go, Java mérite-t-il toujours sa place dans les écosystèmes de développement modernes ? Qu’en est-il de son adoption par les jeunes développeurs (au sens large du terme) ?

Un homme ringard avec le logo Java sur son tshirt demandant how do you do, fellow kids?

C’est indéniable, Java est l’un des langages de programmation les plus utilisés au monde, disposant d’une importante base d’utilisateurs, et tient toujours sa place sur le podium du classement.

Malgré l’émergence de nouvelles technologies, le langage Java reste un incontournable dans les projets maintenus ou mis en place par les développeurs. Près de la moitié des développeurs actifs auraient d’ailleurs été aux prises avec Java au cours de ces 7 dernières années.

Majoritairement utilisé dans des projets d’entreprise, on retrouve le langage dans beaucoup d’applications Internet riches, mais aussi des projets de plus petite envergure, de type utilitaire et/ou appli pour petite(s) tâche(s).

Télécharger IntelliJ IDEA pour les développeurs Java

Très ancré dans les projets propres aux services informatiques, on le trouve également dans des domaines comme le développement mobile (Android legacy toi-même tu sais), le cloud computing, la fintech et le big data (oh yeah que des expressions en anglais tavu).

Pour ce qui est des domaines métiers, c’est simple : Java est partout, et dans beaucoup d’applications en production. Banque, finance, industrie, logistique, vente, santé et j’en passe. Mais ça, ça ne devrait pas vous surprendre. 😉

La célèbre popup 3 billion devices run Java

Malgré son grand âge (pour un langage de programmation, calmez-vous), Java a su évoluer pour rester dans la course en s’adaptant aux besoins modernes des développeurs, sans pour autant perdre en fiabilité ni en stabilité (incident log4j mis à part 👀 mais en vrai, c’était même pas sa faute).

Sa communauté et son écosystème jouent un rôle clé dans son adoption, avec la démocratisation de frameworks comme Spring et Hibernate, tout comme sa compatibilité avec plusieurs plateformes. Java est également un langage majoritairement enseigné en université, notamment pour l’introduction de la programmation orientée objet.

Au vu de tous ces paramètres, les offres d’emploi portant sur la techno Java sont au rendez-vous, tout comme les salaires proposés.

Les nouveautés de Java 23

Pour celles et ceux d’entre vous qui seraient déjà surpris de constater qu’il existe d’autres versions après Java 8 (en même temps c’est chiant les montées de version), on va profiter de l’occasion pour faire le point sur les nouveautés introduites par Oracle dans Java 23.

Meme dans lequel des gens s'étonnent que Java 23 sorte, une première dit qu'elle utilise la version 17, une autre la version 11, et un dernier apprend qu'il y a d'autres versions après la 8

Parmi les mises à jour embarquées dans cette nouvelle version, on notera la prise en compte des types primitifs dans les instructions instanceof et switch. Cette nouveauté (en preview) permet aux développeurs d'utiliser le pattern matching avec les types primitifs, rendant le code plus expressif et efficace.

Un aperçu de la prise en compte des types primitifs avec l'instruction switch en Java

Le nouveau kit de développement introduit également la possibilité de formater ses commentaires JavaDoc en Markdown, une fonctionnalité qui devrait ravir de nombreux développeurs. Auparavant, seul le format HTML était pris en charge, ce qui demandait plus de rigueur pour la mise en forme des docs. Le Markdown apporte plus de simplicité et de lisibilité — plus d’excuse pour éviter de rédiger la doc. 🫣

IntelliJ IDEA, l’IDE qui améliore la productivité et l’expérience de développement pour Java

Pour devenir plus accessible, Java 23 simplifie la création de petits programmes avec les déclarations implicites de classes et de méthodes main.

Cela signifie qu’il est désormais possible d’écrire des programmes sans avoir à définir la sempiternelle et insupportable structure public static void main(String[] args), de quoi rendre le code plus simple et léger, surtout pour les projets d’apprentissage ou les exemples rapides.

Java 23 embarque une nouvelle API de fichiers de classe (Class-File API), qui permet aux développeurs d’accéder et de manipuler directement les fichiers de classes Java.

Chaque fichier .class généré après la compilation contient le bytecode que la JVM exécute. Avant cette mise à jour, la manipulation de ces fichiers nécessitait de passer par des bibliothèques tierces comme ASM ou Javassist, ce qui rendait le processus complexe et chronophage.

Avec la nouvelle Class-File API, les développeurs peuvent maintenant lire, analyser et modifier ces fichiers de manière native et plus simple. Cela est particulièrement utile pour ceux qui créent des outils ou frameworks basés sur le bytecode, ou qui ont besoin de manipuler le comportement des classes après leur compilation.

En complément, Java 23 introduit des améliorations visant à offrir plus de performances et de sécurité pour le langage, comme l’évolution de l’API Vector pour des calculs plus rapides, une meilleure gestion de la concurrence avec la “concurrence structurée” et des optimisations sur la collecte des objets inutilisés via le Z Garbage Collector (ZGC pour les intimes).

Quel IDE pour coder avec Java ?

S’il y a un bien un IDE qui fait consensus chez les développeurs Java professionnels, c’est sans aucun doute IntelliJ IDEA de JetBrains.

Graph présentant les IDE préférés des développeurs Java, IntelliJ IDE est premier avec 81% des votes

En plus d’offrir une expérience de développement fluide et intuitive, sa réputation s’est construite sur sa stabilité, ses fonctionnalités de productivité avancées et surtout sa prise en charge complète de l’écosystème Java, qui fait de lui une référence.

Comme a son habitude, JetBrains a sorti pour cette rentrée sa seconde release majeure de l’année (2024.2), qui apporte plusieurs améliorations à IntelliJ IDEA ainsi qu’à l’ensemble de ses IDE.

En raison du fort taux d’adoption observé par l’éditeur ces derniers mois, la nouvelle interface utilisateur de ses solutions est désormais activée par défaut.

Aperçu de la nouvelle interface utilisateur de l'IDE IntelliJ IDEA de JetBrains pour Java

Cette UI, plus moderne et épurée, améliore à la fois la lisibilité et la navigation au sein de l’IDE. Elle offre une expérience encore plus agréable pour les développeurs, et minimise les distractions afin que ceux-ci restent pleinement concentrés, maintenant ainsi leur état de flow lorsqu’ils codent.

Les utilisateurs préférant l'ancienne interface peuvent toujours y accéder via un plugin dédié, pour le moment.

La saisie semi-automatique de lignes de code bénéficie d’une amélioration. Plutôt que vous proposer de compléter un nom de variable, de classe ou de fonction, cette fonctionnalité est en mesure de vous suggérer des lignes entières de code. Le hack ultime pour gagner un max de temps, quel que soit le langage dans lequel vous travaillez.

La saisie semi-automatique de lignes de code est maintenant complétée par la mise en surbrillance de code, de nouveaux raccourcis pour accepter des mots et lignes de suggestions longues, et d’un processus revisité pour l’intégration des modifications, qui élimine les éventuels problèmes de formatage.

JetBrains profite de cette nouvelle version pour rendre le développement à distance plus fluide. Désormais, les paramètres modifiés dans votre IDE local sont automatiquement synchronisés avec l’IDE distant. Où que vous soyez, vos réglages et préférences vous suivent pour garantir un environnement de travail cohérent.

Meme de Pam dans la série The Office en train de dire they're the same picture

Les développeurs utilisant des systèmes de contrôle de version comme Git bénéficieront d’une interface retravaillée pour le journal Git, avec des nouvelles dispositions et couleurs pour faciliter l’identification et le suivi des branches. Tout est conçu pour améliorer la lisibilité et la gestion des modifications sur de gros projets collaboratifs.

Les utilisateurs amenés à naviguer dans des formats de données complexes comme JSON, XML, JWT, ou même HTML, apprécieront le visualiseur de variables de chaînes. Cette fonctionnalité permet de consulter plus agréablement les données concernées directement depuis l’IDE, sans avoir à passer par des outils externes.

En complément, chaque IDE et outil de JetBrains embarque des nouveautés spécifiques aux langages qu’il couvre dans la cadre de cette nouvelle release.

Télécharger IntelliJ IDEA 2024.2 pour les développeurs Java

Découvrez également les nouveautés de la version 2024.2 de JetBrains pour :

À propos de l'auteur
Nicolas Lecointre
Chief Happiness Officer des développeurs, ceinture noire de sudo. Pour rire, j'ai créé Les Joies du Code. J'utilise Vim depuis 10 ans parce que je sais pas comment le quitter.