Skip to main content

Spring domine l’écosystème Java : 60 % l’utilisent pour leurs applications principales

Écrit par
jvm with logos feature

5 février 2020

0 minutes de lecture

Bienvenue dans notre rapport annuel sur l’écosystème JVM ! Ce rapport présente les résultats de la plus grande enquête annuelle consacrée à l’écosystème JVM, menée auprès de plus de 2 000 personnes au second semestre 2019. Nous tenons à remercier toutes celles et ceux qui ont participé et partagé leurs points de vue sur Java et les sujets liés à la JVM.

Ce rapport se compose de six articles :

  1. Rapport 2020 sur l’écosystème JVM – Introduction

  2. 36 % des développeurs ont abandonné Oracle JDK au profit d’une autre distribution d’OpenJDK au cours de l’année écoulée

  3. 64 % des développeurs indiquent que Java 8 reste la version la plus utilisée

  4. Kotlin dépasse Scala et Clojure et devient le deuxième langage le plus populaire sur la JVM

  5. Spring domine l’écosystème Java : 60 % l’utilisent pour leurs applications principales

  6. IntelliJ IDEA domine le marché des IDE, avec 62 % d’adoption parmi les développeurs JVM

Nous avons également préparé un rapport PDF très soigné qui rassemble toutes ces informations dans un seul document à télécharger.

Utilisez-vous le framework Spring ?

Exactement 6 personnes sur 10 s’appuient sur le framework Spring pour leurs applications en production. C’est une part de marché remarquablement élevée pour un framework open source tiers.

Pictogramme montrant six silhouettes violettes avec la mention « Oui » et quatre silhouettes bleu clair avec la mention « Non », accompagné du logo Snyk

Quelle version de Spring utilisez-vous pour votre application principale ?

Spring existe depuis longtemps. Grâce à des changements et des innovations importants, il est devenu le framework dominant de l’écosystème Java. Les deux tiers des utilisateurs de Spring travaillant avec Spring 5, l’adoption des versions récentes est forte.

Diagramme à barres présentant les taux d’adoption par version : 5.1.x : 48 %, 5.0.x : 18 %, 4.3.x : 17 %, et les autres versions à 5 % ou moins.

Quels frameworks web côté serveur utilisez-vous ?

Côté serveur, Spring reste incontournable : la moitié du marché utilise Spring Boot et près d’un tiers Spring MVC.

Des frameworks comme Micronaut et Quarkus ont probablement les atouts nécessaires pour rivaliser avec Spring. Il faudra toutefois attendre le rapport de l’année prochaine avant de tirer des conclusions. JHipster ne semble pas aussi populaire qu’on pourrait le croire au vu des nombreuses conférences qui lui sont consacrées. Il est également intéressant de constater que JSF est toujours utilisé.

Graphique à barres horizontal indiquant que Spring Boot représente 50 %, Spring MVC 31 %, JSF 11 % et les autres frameworks Java 3 à 5 % ; 21 % des répondants n’en ont sélectionné aucun.

Utilisez-vous Java Enterprise (J2EE, Java EE, Jakarta EE) ?

Nous demandons chaque année aux développeurs Java s’ils utilisent l’édition Enterprise (EE) de Java. Cette année, nous avons légèrement modifié la question. Nous avons ajouté l’option « Oui, via Spring ou un autre framework (par exemple JPA ou Servlets) » afin que les personnes qui utilisent EE indirectement ne répondent pas « Non ».

Avec 35 % des développeurs qui indiquent ne pas utiliser Java EE, la situation a peu évolué depuis l’année dernière (38 %). Il est toutefois important de souligner que 4 développeurs sur 10 utilisent Java Enterprise indirectement. Cela soulève des interrogations quant à la popularité de Java EE.

Diagramme en anneau indiquant que 24 % l’utilisent directement, 41 % utilisent Spring ou un autre framework et 35 % ne l’utilisent pas.

Quelle version de Java EE utilisez-vous pour votre application principale ?

Près de 4 personnes sur 10 utilisent la dernière version de Java EE, tandis que Java EE 7 reste assez populaire. De plus, 2 % des développeurs ont indiqué utiliser encore J2EE. Ce pourcentage peut sembler faible, mais il représente un nombre important de personnes : presque autant que celles qui utilisent Scala comme langage principal pour leurs applications !

Il est également important de noter que 21 % des personnes interrogées ne connaissent pas la version exacte de Java EE qu’elles utilisent. En croisant les réponses à cette question avec celles de la question précédente, nous avons constaté que 95 % des développeurs qui ignorent leur version exacte de Java EE l’utilisent indirectement, notamment via le framework Spring.

Diagramme en barres indiquant que Java EE 8 représente 37 %, Java EE 7, 29 %, Java EE 6, 9 %, Java EE 5 et J2EE, 2 % chacun, et que 21 % des répondants ne savent pas.

Comment avez-vous réagi au désaccord entre Oracle et la fondation Eclipse concernant la poursuite de l’utilisation de l’espace de noms javax ?

Après des mois de négociations, Oracle et la fondation Eclipse ne sont pas parvenus à un accord sur l’utilisation de l’espace de noms de package javax par la communauté de la fondation Eclipse. Oracle détient la marque déposée associée à l’espace de noms javax. Par conséquent, les futures améliorations apportées à Jakarta EE par la fondation Eclipse devront utiliser un autre nom de package. Les changements apportés à Jakarta EE s’accompagnent donc également d’une migration du code des bibliothèques.

Si le changement de nom du package clarifie clairement à qui il appartient — Oracle jusqu’à Java EE 8, puis la fondation Eclipse à partir de Jakarta EE 8 —, il concerne toutes les API de l’édition Enterprise, puisqu’elles commencent toutes par javax.

Interrogée sur cette évolution, une écrasante majorité des personnes participantes se disent agacées par la position d’Oracle : 2 développeurs JVM sur 3 expriment leur déception quant aux résultats des négociations. En réalité, les réponses à cette question soulèvent des interrogations sur Oracle. Et si cette issue finissait par nuire à la gestion de Java par Oracle ?

Visuel du sondage montrant les réactions : 37 % très déçus, 32 % un peu contrariés, 17 % indifférents, 2 % satisfaits et 14 % sans opinion.

Envisageriez-vous de passer à un autre framework ou à une autre technologie pour éviter de migrer vers une version plus récente de Jakarta EE, en raison des changements apportés à l’espace de noms javax ?

Bien que la majorité des personnes interrogées soient plutôt déçues par les changements apportés à l’espace de noms javax, seuls 10 % des développeurs passeraient à un autre framework. Selon notre enquête, 66 % des développeurs envisagent probablement ou certainement de rester sur Jakarta EE malgré ces changements. Il est possible qu’ils pensent ne pas être concernés, puisque la plupart utilisent la version EE indirectement, via des frameworks comme Spring. Cela laisse penser que le changement d’espace de noms constitue surtout un désagrément décevant, plutôt qu’un problème qui inciterait réellement les développeurs à agir.

Diagramme en anneau présentant les réponses : 10 % certainement, 24 % probablement, 36 % peu probable et 30 % non, Jakarta EE sans hésiter.

Quels autres langages votre application utilise-t-elle ?

Aujourd’hui, peu de personnes n’utilisent qu’un seul langage pour leurs applications. La grande majorité des développeurs doivent désormais maîtriser plusieurs langages, travailler en full stack ou être polyglottes. Comme les langages répondent souvent à des besoins spécifiques, il est évident que les développeurs en utilisent d’autres en plus de leur langage JVM principal. Cela ne signifie pas qu’ils les apprécient forcément : certains sont considérés comme un mal nécessaire, adapté à un besoin précis.

À noter : plusieurs réponses étaient possibles à cette question. Les résultats ne sont toutefois pas très surprenants. JavaScript est le langage le plus utilisé pour le développement front-end, avec 62 %. SQL arrive en tête pour les requêtes de bases de données, avec 44 %, tandis que Python est le choix le plus populaire pour la science des données et le machine learning, avec 22 %.

Graphique à barres horizontales montrant que JavaScript côté front-end (62 %) et SQL (44 %) sont les technologies les plus citées, suivies de Python et Node.js (22 % chacune).

Quels frameworks web côté client utilisez-vous ?

Les personnes participantes pouvaient sélectionner plusieurs réponses à cette question — pourquoi choisir un seul framework quand on peut tous les utiliser ?

Selon les réponses, Angular semble clairement l’emporter, avec 38 %. Toutefois, étant donné le nombre de versions d’Angular disponibles, nous ne savons pas si ce sont les versions récentes ou les anciennes qui arrivent en tête. React occupe la deuxième place avec 31 %, suivi de près par jQuery avec 28 %.

Il est également intéressant de noter que, selon notre enquête, 2 développeurs sur 10 n’utilisent aucun framework. Voyons si cette liste évolue sensiblement au fil du temps.

Graphique à barres horizontal indiquant Angular à 38 %, React à 31 %, jQuery à 28 %, Aucun à 20 %, Vue à 11 % et Backbone à 2 % ; plusieurs réponses possibles.

Ce rapport ne s’arrête pas là ! Quelle section souhaitez-vous lire ensuite ?

  1. Rapport 2020 sur l’écosystème JVM – Introduction

  2. 36 % des développeurs ont abandonné Oracle JDK au profit d’une autre distribution d’OpenJDK au cours de l’année écoulée

  3. 64 % des développeurs indiquent que Java 8 reste la version la plus utilisée

  4. Kotlin dépasse Scala et Clojure et devient le deuxième langage le plus populaire sur la JVM

  5. Spring domine l’écosystème Java : 60 % l’utilisent pour leurs applications principales

  6. IntelliJ IDEA domine le marché des IDE, avec 62 % d’adoption parmi les développeurs JVM

Téléchargez le rapport dès maintenant !

Lire la suite

Blog

Les modèles de pointe ont trouvé les vulnérabilités. Seul l’attaquant a trouvé les chaînes d’exploitation.

L’analyse statique a détecté les failles, mais seuls des tests d’attaque en conditions réelles ont prouvé comment elles pouvaient être enchaînées pour provoquer des compromissions. Comparaison d’Evo COS, de Claude Security et de Claude Code Security.

feature insights context
Blog

Les attaques autonomes sont déjà là. La défense doit suivre leur rythme.

Les attaquants autonomes réduisent la fenêtre de défense. Découvrez comment la découverte, la correction, la validation et la prévention continues peuvent aider les équipes de sécurité à suivre le rythme.

Blog

Pourquoi les agents de codage IA créent-ils sans cesse des failles de contrôle d’accès ?

Les agents de codage IA peuvent générer une logique d’autorisation qui compile et passe la revue, tout en exposant les données d’un tenant à un autre. Découvrez pourquoi les failles de contrôle d’accès sont difficiles à détecter et comment les prévenir.