L'édition de novembre 2020 de l'index TIOBE nous a révélé une surprise : Python s'est emparé de la seconde place, la position la plus haute qu'il ait occupée dans le classement depuis 2001. Ainsi, pour la première, le duo de tête n'est plus constitué de C et de Java.
Paul Jansen, PDG de TIOBE Software, a commenté les résultats en ces termes :
« Pour la première fois depuis le lancement de l'indice TIOBE il y a près de 20 ans, Java et C n'occupent plus les deux premières positions. C est toujours numéro un, mais c'est Python qui occupe désormais la seconde position. Certains disent que la récente montée en popularité de Python est due à des domaines en plein essor tels que l'exploration de données, l'IA et le calcul numérique. Mais j'ai ma propre opinion à ce sujet. Je pense que la popularité de Python est liée à la demande générale. Dans le passé, la plupart des activités de programmation étaient effectuées par des ingénieurs en logiciel. Mais des compétences en programmation sont nécessaires partout de nos jours et il y a un manque de bons développeurs de logiciels. En conséquence, nous avons besoin de quelque chose de simple qui puisse être géré par des ingénieurs non logiciels, de quelque chose de facile à apprendre avec des cycles d'édition rapides et un déploiement fluide. Python répond à tous ces besoins ».
Quelques mois plus tard, en octobre 2021, le sacre : Python était à la première place du baromètre.
Paul Jansen en a profité pour féliciter le père de Python :
« Pour la première fois depuis plus de 20 ans, nous avons un nouveau chef de file : le langage de programmation Python. L'hégémonie de longue date de Java et C est terminée. Python, qui a commencé comme un simple langage de script, comme alternative à Perl, est devenu mature. Sa facilité d'apprentissage, son énorme quantité de bibliothèques et son utilisation répandue dans toutes sortes de domaines en ont fait le langage de programmation le plus populaire d'aujourd'hui. Félicitations Guido van Rossum ! Proficiat ! »
Et la situation ne s'est pas limitée à cet exploit. Depuis octobre 2021, Python est le langage de programmation le plus populaire sur TIOBE, creusant même l'écart en mars 2024. À ce propos, Paul Jansen a déclaré : « Février a été un mois très calme pour l'indice TIOBE. Les seules notes intéressantes sont que Python a maintenant 4,5 % d'avance sur les autres, que Scratch a réintégré le top 10 et que Rust continue de grimper ».
Mais pourquoi l'attrait pour Python est-il si grand ?
Python est un langage de programmation interprété de haut niveau, doté d'une syntaxe simple, qui le rend facilement lisible et extrêmement convivial pour les utilisateurs et les débutants. Conçu à l'origine pour répondre au désir de Guido Van Rossum de disposer d'un langage de programmation simple à utiliser et beau à regarder, Python a été lancé pour la première fois en 1991. Depuis son développement, il s'est largement répandu pour les développeurs, les scientifiques des données, les chercheurs et bien d'autres.
Voici une illustration de la facilité de lecture entre Python et Java :
Code Python : | Sélectionner tout |
print("Hello world.")
Code Java : | Sélectionner tout |
1 2 3 4 5 | public class HelloWorld { public static void main (String[]args) { System.out.println.("Hello world"); } } |
Comme Python est un langage polyvalent, il peut être utilisé dans une grande variété d'applications, et sa nature simple en fait un excellent langage pour automatiser des tâches, créer des sites web ou des logiciels, et analyser des données.
Python possède également plusieurs autres caractéristiques qui le rendent populaire auprès des développeurs et des ingénieurs. En voici quelques-unes :
- Il est facile à lire. Le code Python utilise des mots-clés anglais plutôt que des signes de ponctuation, et ses sauts de ligne aident à définir les blocs de code. En pratique, cela signifie que vous pouvez identifier ce que le code est conçu pour faire simplement en le regardant.
- Il s'agit d'un logiciel libre. Vous pouvez télécharger le code source, le modifier et l'utiliser comme bon vous semble.
- Il est portable. Certains langages exigent que vous modifiiez le code pour qu'il fonctionne sur différentes plateformes, mais Python est un langage multiplateforme, ce qui signifie que vous pouvez exécuter le même code sur n'importe quel système d'exploitation doté d'un interpréteur Python.
- Il est extensible. Le code Python peut être écrit dans d'autres langages (comme le C++) et les utilisateurs peuvent ajouter des modules de bas niveau à l'interpréteur Python pour personnaliser et optimiser leurs outils.
- Il dispose d'une vaste bibliothèque standard. Cette bibliothèque est accessible à tous et signifie que les utilisateurs n'ont pas besoin d'écrire du code pour chaque fonction. Ils peuvent accéder à des modules intégrés qui les aident à résoudre les problèmes de la programmation quotidienne et bien plus encore.
Les plus de Python auprès des développeurs
Facilité d'apprentissage
Python est régulièrement classé parmi les langages de programmation les plus faciles à apprendre. Il est réputé pour sa grande fiabilité et sa syntaxe simple, qui attirent en particulier les nouveaux programmeurs.
« Python est le langage le plus proche de ce que j'appelle "un langage de gratification instantanée", c'est-à-dire qu'avec très peu de code, il peut accomplir tant de choses, même si vous êtes un programmeur novice », a déclaré Karen Panetta, membre de l'IEEE et doyenne de la faculté d'ingénierie de l'université de Tufts. « C'est parce que Python se lit comme de l'anglais, ce qui le rend plus propice à l'apprentissage pour un large public d'utilisateurs. La plupart des détails de bas niveau dont nous nous préoccupions dans d'autres langages, comme la déclaration des types de variables ou d'arguments, sont gérés par Python, ce qui rend la programmation très flexible et plus facile à utiliser que d'autres langages ».
L'explosion de l'IA, de l'apprentissage automatique et de la science des données dans les entreprises
Les domaines où l'on trouve le plus Python sont sans doute la science des données, l'IA et l'apprentissage automatique - un sous-ensemble de l'IA. Python est livré avec un grand nombre de bibliothèques intégrées qui fournissent une grande partie des fonctionnalités dont un scientifique des données peut avoir besoin. En outre, il existe un grand nombre de bibliothèques robustes et populaires que vous pouvez télécharger pour Python et utiliser dans vos projets, telles que NumPy, Pandas, matplotlib et SciPy pour les mathématiques, la manipulation des données, la visualisation des données et bien plus encore.
« Nous assistons presque à une renaissance parce que Python s'est avéré très, très utile pour les personnes qui font de l'intelligence artificielle ou de l'apprentissage automatique », a déclaré Jeff Hammond, vice-président et analyste principal de Forrester. « Il existe de très bons frameworks. Vous disposez d'outils intéressants pour les scientifiques des données, ou les personnes qui aspirent à le devenir ».
Python est très utilisé dans l'internet des objets
Avec l'essor de l'internet des objets - de petits appareils de faible puissance connectés à l'internet et capables d'exécuter n'importe quel code personnalisé - Python s'est imposé pour un grand nombre d'appareils que vous pouvez acheter et bricoler. Des appareils comme le Raspberry Pi sont minuscules et se connectent à une multitude de capteurs, d'écrans, de lumières, de robots et autres, et vous permettent d'écrire du code pour communiquer entre ces éléments, ainsi que d'envoyer et de recevoir des données via Bluetooth, Internet et d'autres méthodes de communication.
Si tous ces appareils ne prennent pas en charge Python, beaucoup le font ; soit une version complète de Python, soit Micropython : un sous-ensemble de Python pour les appareils plus simples, de sorte que vous pouvez toujours profiter de la simplicité et de la productivité de Python sans avoir besoin de toute la puissance qu'il requiert normalement.
Python est polyvalent pour le développement web
Lors de la mise en place d'un serveur web, vous pouvez penser à Node.js, .NET ou Java, mais Python est un autre concurrent de taille. Bien qu'il ne soit pas aussi performant que les autres langages et frameworks, il est facile de mettre en place et de faire fonctionner quelque chose en Python très rapidement et de continuer à être très productif. L'expérience du développeur peut l'emporter sur les performances réduites, et la mise à l'échelle de votre système pour la performance devient plus facile que jamais avec des services en nuage comme AWS, Azure, Google Cloud, etc.
En ce qui concerne les frameworks, il y a deux principaux concurrents : Flask et Django. Flask est un framework plus minimaliste qui vous laisse déterminer comment vous souhaitez aborder la conception de votre système, ce qui est idéal pour les développeurs chevronnés. Django est un framework qui fournit une structure assez rigide, ce qui est parfait pour les débutants et le prototypage où vous voulez juste mettre quelque chose en place et fonctionner très rapidement.
Une grande communauté de développeurs
Python est utilisé dans un grand nombre d'applications, de l'intelligence artificielle aux jeux vidéo en passant par les outils de productivité. « Comme il a bénéficié d'une large diffusion et d'une acceptation dans de nombreuses disciplines, il dispose désormais d'une vaste communauté de développeurs », a déclaré Panetta. « Il existe une abondance de bibliothèques Python à code source ouvert qui peuvent très probablement réaliser ce dont vous avez besoin pour résoudre votre problème ».
La souplesse du langage présente toutefois quelques inconvénients, a reconnu Panetta : Python n'est peut-être pas aussi rapide que d'autres langages interprétés comme Java, mais son développement prend moins de temps que celui de Java, et de nombreuses personnes sont prêtes à accepter ce compromis. Et si les applications Python se développent ou deviennent plus complexes, cela pourrait nuire à l'évolutivité et à la capacité de diagnostiquer facilement les erreurs.
Toutefois, « la communauté d'utilisateurs est si vaste que toute personne rencontrant un problème de codage peut rapidement trouver la solution en posant simplement une question ou en cherchant la réponse sur un site de la communauté des développeurs Python », a déclaré Panetta.
Pas représentatif du paysage TIC français
L'indice TIOBE Programming Community est un indicateur de la popularité des langages de programmation. L'index est mis à jour une fois par mois. Les notes sont basées sur le nombre d'ingénieurs qualifiés dans le monde, les cours et les fournisseurs tiers. Les moteurs de recherche populaires tels que Google, Bing, Yahoo!, Wikipédia, Amazon, YouTube et Baidu sont utilisés pour calculer les notes. Il est important de noter que l'index TIOBE ne concerne pas le meilleur langage de programmation ou le langage dans lequel la plupart des lignes de code ont été écrites. L'index peut être utilisé pour vérifier si vos compétences en programmation sont toujours à jour ou pour prendre une décision stratégique sur le langage de programmation à adopter lors du démarrage de la construction d'un nouveau système logiciel.
Il n'est donc pas indicateur de la réalité dans le monde de l'IT Pro francophone. Parmi les langages les plus demandés dans les offres d'emploi postées sur Developpez.com, Python occupait la deuxième place.
Emploi informatique 2022 : les langages les plus demandés et les mieux payés
Portail Emploi de Developpez.com
Portail Python de Developpez.com
Source : TIOBE
Et vous ?
Avez-vous déjà développez en Python ? Si oui, quelle a été votre première expérience avec Python et comment cela a-t-il influencé votre parcours en programmation ?
Selon vous, quelles sont les bibliothèques Python les plus innovantes et pourquoi ?
Comment Python a-t-il évolué pour répondre aux besoins de l’industrie et quelle est la prochaine étape pour ce langage ?
Quels sont les défis que Python doit encore surmonter pour rester pertinent dans les années à venir ?
En quoi l’utilisation de Python dans l’enseignement influence-t-elle la prochaine génération de développeurs ?