La société de test de logiciels Tiobe, qui tient un suivi mensuel de la popularité de la vaste gamme de langages de programmation disponibles pour les développeurs de logiciels, a choisi le C++ comme langage de programmation de 2022.
Malgré sa troisième place dans l’indice Tiobe de janvier 2023, la popularité du C++ a augmenté plus rapidement que celle de tous les autres langages l’année dernière, avec une hausse de 4,26 % par rapport à janvier 2022, selon la société.
Les suivants cette année sont le C, deuxième langage le plus populaire, dont la popularité a augmenté de 3,82 %, et Python, premier langage, dont la popularité a augmenté de 2,78 %. Après avoir chuté de la troisième place, Java est maintenant en quatrième position, avec une croissance de 1,55 %.
« La raison de la popularité du C++ est son excellente performance tout en étant un langage orienté objet de haut niveau. Grâce à cela, il est possible de développer des systèmes logiciels rapides et vastes (plus de millions de lignes de code) en C++ sans nécessairement se retrouver dans un cauchemar de maintenance », explique Paul Jensen, PDG de Tiobe.
Dernière mise à jour de C++ en décembre 2020
Il attribue également la hausse de popularité de C++ à la mise à jour relativement récente de C++20 en décembre 2020. Il s’agit de la dernière version du C++ à être normalisée par l’Organisation internationale de normalisation (ISO).
C++ est le principal langage utilisé pour construire Chrome et il a été un langage clé, avec le C, pour le projet Open Source Android. Le C++ est également populaire dans la programmation de systèmes, l’industrie automobile, le secteur financier et le développement de jeux.
En ce qui concerne l’indice Tiobe, Paul Jensen note que le C++ a gagné en popularité lorsque la norme C++11 a été publiée en 2011, marquant ainsi sa première hausse importante depuis 1998.
« L’adoption de cette nouvelle norme [C++11] a pris quelques années car il n’y avait pas de compilateurs C++ disponibles pour prendre en charge la nouvelle définition du langage. À cause de C++11, le C++ remontait lentement dans l’indice Tiobe après avoir connu une baisse constante depuis 2001. Le deuxième point de repère est la récente publication de C++20 », note Paul Jensen.
Rust remonte dans le top 20
Paul Jensen note également que le rival du C++, Rust, est à nouveau
entré dans le top 20 (il était classé à la 26ème place il y a un an), mais
affirme que « cette fois, cela semble être pour de bon », ce qui suggère
qu’il pourrait désormais occuper une position stable dans le top 20.
La notoriété de Rust a augmenté au cours de l’année dernière après son adoption officielle pour le noyau Linux version 6.1, ouvrant la voie à l’écriture de pilotes en Rust.
À bien des égards, le C++ est un choix intéressant pour le langage de l’année de Tiobe. Mark Russinovich, directeur technique de Microsoft Azure, a récemment déclaré que les développeurs devraient éviter d’utiliser C ou C++ dans les nouveaux projets et utiliser plutôt Rust en raison de ses avantages en matière de sécurité de la mémoire, et a même exhorté l’industrie à déclarer ces langages dépréciés.
Le Android Open Source Project, qui a adopté Rust en 2021, gère son adoption de Rust en laissant le code C ou C++ existant en place mais en écrivant du nouveau code en Rust. Ses ingénieurs ont pris cette décision après avoir constaté que Rust pouvait assurer la sécurité de la mémoire, tout en offrant des performances équivalentes à celles du C et du C++.
Même la NSA a récemment demandé aux développeurs d’envisager de passer de C et C++ à un langage de programmation à mémoire sécurisée tel que C#, Go, Java, Ruby, Rust et Swift.
En résumé, les 10 premiers langages dans l’indice Tiobe de janvier 2023 sont Python, C, C++, Java, C#, Visual Basic, JavaScript, SQL, langage d’assemblage et PHP. Tiobe affirme que son classement est basé sur le nombre d’ingénieurs qualifiés dans le monde, les cours et les fournisseurs tiers. Il utilise également des moteurs de recherche populaires pour calculer les classements.
Source : ZDNet.com
(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/fr_FR/all.js#appId=243265768935&xfbml=1"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));