Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

La popularité de Java continue de décliner et profite à Python qui se rapproche de plus en plus de la seconde place
Selon l'édition d'octobre 2020 de l'index TIOBE

Le , par Stéphane le calme

87PARTAGES

12  0 
La popularité du langage de programmation continue encore à décliner, au bénéfice de Python, en passe de s'emparer de sa place de deuxième langage de programmation le plus populaire au monde, selon le dernier classement des langages de programmation établi par Tiobe. Paul Jansen, PDG de TIOBE Software, a commenté en ces termes : « Python a conquis la troisième position de l'indice TIOBE l'année dernière, mais sa popularité ne cesse d'augmenter. Ce mois-ci, il a atteint un nouveau record historique à 11,28%. Tandis que Java approche de son plus bas niveau depuis 2001, Python et Java se rapprochent. L'écart est désormais inférieur à 1,3%. Depuis le début de l'indice TIOBE, C et Java ont toujours occupé les 2 premières positions. Ce serait donc un événement unique, si Python atteignait la position n° 2. Voyons ce qui va se passer dans les prochains mois ».

En clair, comme le note le PDG, si Python devance Java, ce serait la première fois depuis que Tiobe a commencé son indice de popularité des langages de programmation en 2001 que Java serait en dehors des deux premières places.

En septembre 2020, Java était le langage de programmation avec la plus forte baisse, la popularité du langage ayant baissé de 3,18 % depuis septembre 2019. Paul Jansen indiquait d'ailleurs à ce propos : «  En 2003, le langage de programmation C++ était un vrai gagnant. Il a atteint les 17,53 % de part de marché en août 2003, se rapprochant de la deuxième place et devenant lauréat du prix du langage de programmation le plus utilisé en 2003. Depuis, le C++ s'est dégradé. Après 2005, il n'a plus atteint les 10 % d’utilisation et en 2017, il a atteint un creux historique de 4,55 %. Mais si on le compare à l'année dernière, le C++ est désormais le langage à la croissance la plus rapide du pack (+ 1,48 %). Je pense que la nouvelle norme C++ 20 pourrait en être l'une des principales causes. Surtout à cause de la nouvelle fonctionnalité des modules qui va remplacer le redoutable mécanisme d'inclusion. Le C++ bat les autres langages avec une tendance positive comme R (+ 1,33 %) et C# (+ 1,18 %). En revanche, Java est en réelles difficultés avec une perte de -3,18 % par rapport à l'année dernière ».


Notons que dans le top 10, seuls Java (4,32 %) et SQL (0,37 %) ont perdu en popularité.

Cette année a marqué le 25e anniversaire de Java. A l'occasion de son anniversaire, Oracle a annoncé la disponibilité de Java 15 avec des nouveautés et améliorations, entre autres :
  • L'ajout des Hidden Classes : qui sont des classes qui ne peuvent pas être utilisées directement par le bytecode d'autres classes. Elles sont destinées à être utilisées par des frameworks qui génèrent des classes à l'exécution et les utilisent indirectement. Une Hidden Class peut être définie comme un membre d'une niche de contrôle d'accès et peut être déchargée indépendamment des autres classes.
  • La réimplémentation de l'ancienne API Datagram Socket : cette fonctionnalité améliore la maintenabilité et la stabilité du JDK en remplaçant les implémentations sous-jacentes des API java.net.DatagramSocket et java.net.MulticastSocket par des implémentations plus simples et plus modernes. Les nouvelles implémentations seront faciles à adapter pour fonctionner avec des threads virtuels, actuellement explorées dans Project Loom.
  • ZGC : ZGC a été intégré dans JDK 11 par JEP 333, dans le but d'améliorer la productivité en réduisant les temps de pause GC, de gérer des tas allant de relativement petits (quelques centaines de mégaoctets) à très grands (plusieurs téraoctets), ainsi que de poser un base pour les futures fonctionnalités et optimisations du GC utilisant des pointeurs et des barrières de charge colorés. Avec JEP 377, ZGC passe de la catégorie de fonctionnalité expérimentale à fonctionnalité de production.
  • Les blocs de texte pour une meilleure lisibilité de chaînes de caractères : les blocs de texte sont destinés à simplifier la tâche d'écriture des programmes Java en facilitant l'expression de chaînes de caractères couvrant plusieurs lignes de code source, tout en évitant les séquences d'échappement dans les cas courants. Un bloc de texte est une chaîne littérale de plusieurs lignes qui évite la plupart des séquences d'échappement, formate automatiquement la chaîne de manière prévisible et offre au développeur le contrôle du format lorsqu'il le souhaite.
  • Shenandoah : Shenandoah a été intégré dans JDK 12 par JEP 189. Il a été marqué comme expérimental afin de correspondre au statut d'autres nouveaux GC, notamment Epsilon GC et ZGC. JEP 379 fait passer récupérateur de mémoire Shenandoah d'une fonctionnalité expérimentale à une fonctionnalité de production, mais ne propose pas de changer le GC par défaut, qui reste G1, et ne propose pas de changer le processus de développement de Shenandoah, qui continuera à prendre en charge les dernières JDK et JDK LTS / STS populaires.

Mis à jour chaque mois, l'index de la communauté de programmation de TIOBE mesure la popularité des langages de programmation. Comme le souligne TIOBE, l'index n'est pas le reflet des meilleurs langages de programmation ou de ceux qui ont le plus de lignes de code. Au lieu de cela, les évaluations sont basées sur le nombre d'ingénieurs qualifiés, de cours et de fournisseurs tiers axés sur un langage en particulier, ainsi que sur les résultats des moteurs de recherche populaires tels que Google, Bing, Yahoo, Wikipedia, Amazon, YouTube et Baidu.

Pour les développeurs, l'index est également un moyen utile de déterminer si leurs compétences en matière de programmation sont à jour et de les aider à choisir le langage qu’ils voudraient peut-être adopter lors de la plongée dans un nouveau projet logiciel.

Le paysage des langages de développement en France

Une étude complète annuelle sur les langages les plus demandés, et les salaires proposés, basée sur les offres d'emploi postées sur le Portail Emploi de Developpez.com a été publiée. Cette étude fait suite à trois ans d'études du même genre réalisées au fur et à mesure des années ; celle-ci se base donc sur les données de l'année 2019, antérieure à la pandémie.

Concernant la méthodologie, l'ensemble des offres d'emploi postées sur le Portail Emploi a été pris en considération et les annonces demandant chaque technologie ont été comptabilisées. Dans le cas où une annonce demande plusieurs technologies (cas extrêmement courant), elle est donc décomptée pour chaque technologie étudiée, ce qui permet donc de dégager la demande globale pour chaque technologie, du moment qu'elle fait partie d'au moins une des compétences requises pour un poste. Notez également que la manière de déterminer les offres en fonction des technologies a évolué ce qui peut expliquer des petites différences sur les chiffres des années passées.

Voici la popularité des différents langages dans les 20 000 offres d'emploi postées en 2019 sur Developpez.com :


Emploi développeur 2019 : les langages les plus demandés et les mieux payés
Portail emploi

Source : TIOBE

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de archqt
Membre éprouvé https://www.developpez.com
Le 06/10/2020 à 15:00
<Troll> Ben voilà, une information intéressante, le C++ augmente. Les gens voient enfin la lumière <\Troll>
3  1 
Avatar de garthos
Membre régulier https://www.developpez.com
Le 12/10/2020 à 12:46
c'est dommage que Kotlin n'est pas dans la liste.
C'est pourtant bien lui le responsable donc l'article est un peu vide....
1  0 
Avatar de kevin254kl
Membre chevronné https://www.developpez.com
Le 12/10/2020 à 12:58
La datascience est en faveur de python. Java et python ne répond pas aux même problématiques.
1  0 
Avatar de IronChef
Futur Membre du Club https://www.developpez.com
Le 13/10/2020 à 7:42
Citation Envoyé par kevin254kl Voir le message
La datascience est en faveur de python. Java et python ne répond pas aux même problématiques.
La plupart des plateformes/framework de data sciences sont écrites en java/Scala. Mais côté users effectivement python est roi suivi de R.
1  0 
Avatar de Axel Mattauch
Membre du Club https://www.developpez.com
Le 13/10/2020 à 13:06
Malgré mon statut (programmeur amateur et débutant, C++) cet article suscite de ma part quelques commentaires.

1/Comme tout indicateur, l'indice TIOBE n'est qu'un indicateur et ne se suffit pas pour comparer des langages (d'ailleurs l'article présente également un classement selon un autre indicateur, la popularité des langages dans le marché de l'emploi).
C'est dire que l'article est surtout intéressant par les pistes d'interprétation qu'il donne, et les commentaires au post vont enrichir les interprétations.
Une segmentation en fonction des domaines d'application des langages me semble aussi utile.

2/Incidemment je suis un peu troublé par le fait que les données du tableau ne semblent pas identiques à celles du texte d'accompagnement (peut-être du aux périodes de référence 9/2019-9/2020 pour le texte et 10/2019-10/2020 pour le tableau?). Pas important, mais apporte de la confusion.

3/Sur l'évolution du C++, et me basant sur ma propre expérience (réduite), je confirme que plus je progresse dans mes capacités, plus le mécanisme des #include m'apparait rempli de chausse-trapes. On s'en sort, mais c'est pas élégant. Il faudra donc que je passe de mon étape actuelle (C++17) au C++20.
Le second commentaire sur C++ est que les capacités de compatibilités ascendantes sont certes un atout pour conserver du code existant, mais les incitations à abandonner des écritures old-fashioned devraient être davantage mises en exergue.

4/Sur l'évolution de l'indice TIOBE de Java (#-4%): l'attitude conflictuelle de ORACLE, en rupture avec celle de SUN, n'induit-elle pas un mouvement général de défiance quant à l'évolution du paradigme Java?
1  0