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 !

Pourquoi Python gagne-t-il rapidement du terrain ces dernières années ?
Partagez vos avis

Le , par Michael Guilloux

83PARTAGES

9  0 
Pourquoi Python gagne-t-il rapidement du terrain ces dernières années ?
Si la première version de Python a été publiée en 1990, le langage de programmation objet multiparadigme a connu une croissance rapide ces dernières années. Les indices de popularité des langages de programmation, comme Tiobe et PYPL, ne manquent pas de mettre en avant cette ascension de Python. Pour le mois de novembre 2016 par exemple, avec 13,7 pour cent, Python est, après Java (23,4 %), le langage le plus populaire, avec la plus forte croissance (+ 2,4 %) en un an. Il est également important de préciser que le taux de croissance le plus élevé après celui de Python est de + 0,6 % pour JavaScript. Il faut encore noter que Python n’était qu’à 2,1 % de part de marché en mai 2004.



PYPL : Dans le monde entier, Java est le langage le plus populaire, Python est celui qui a enregistré la plus forte croissance au cours des 5 dernières années (+ 6,8 %) et PHP, celui qui a enregistré la plus forte baisse (-5,0 %).

Python peut s'utiliser dans de nombreux contextes et s'adapter à tout type d'utilisation grâce à des bibliothèques spécialisées. Il est cependant particulièrement utilisé comme langage de script pour automatiser des tâches simples, mais fastidieuses ou certains enchaînements d'actions répétitives. Python peut aussi être utilisé comme langage de développement de prototype lorsqu'on a besoin d'une application fonctionnelle avant de l'optimiser avec un langage de plus bas niveau. Il est particulièrement répandu dans le monde scientifique, et possède de nombreuses extensions destinées aux applications numériques. Il est également apprécié par certains pédagogues qui y trouvent un langage où la syntaxe, clairement séparée des mécanismes de bas niveau, permet une initiation aisée aux concepts de base de la programmation.

Ces différentes raisons, entre autres, peuvent justifier la croissance rapide de Python ces dernières années. À travers un sondage à choix multiples, nous voulons donc savoir ce qui permet au langage de gagner rapidement du terrain. Parmi ces raisons, on peut citer les suivantes :

  • la facilité d'apprentissage ;
  • idéal pour l'enseignement de la programmation. La croissance de Python ces dernières années est due à son adoption comme une norme pour l’enseignement de la programmation. Comme nous l’avons déjà dit, de nombreux pédagogues apprécient le langage pour sa syntaxe permettant une initiation aisée aux concepts de base de la programmation ;
  • Python est bien comme langage de script ;
  • une bonne documentation ;
  • une pléthore de bibliothèques pour de nombreux besoins ;
  • la montée de la data science et du machine learning ;
  • une bonne communauté derrière Python ;
  • la lisibilité du code Python. Par sa syntaxe, il est plus difficile (mais pas impossible) d'écrire du code illisible en Python. Toutefois, un tel code Python pourrait être plus lisible et propre que son équivalent dans d’autres langages ;
  • la rapidité de développement. Un programme Python de 50 lignes peut représenter dans d'autres langages, des programmes de plusieurs centaines de lignes. Ce qui fait qu'en fin de compte, même avec un programmeur Python pas assez rapide, on peut gagner beaucoup de temps au niveau du développement ;
  • Python tourne sur presque toutes les plateformes ;
  • Python n'a pas besoin d'un EDI. Avec Python, on peut se passer des outils complexes comme Visual Studio ou Eclipse. On peut programmer en Python avec un simple éditeur de texte à coloration syntaxique ;
  • Python est ouvert aux autres langages et technologies. Python a choisi de collaborer avec les autres langages et technologies. On peut intégrer l’interpréteur Python dans son propre programme, et ajouter le langage comme système de Scripting (c’est le cas de Blender) ou plugin (comme avec Sublime Text). On peut appeler du code Python depuis d’autres langages et vice-versa.

Et vous ?

Pourquoi Python gagne-t-il rapidement du terrain ces dernières années ?

Voir aussi :

La première bêta de Python 3.6 est disponible, la version finale est prévue pour fin 2016
Quels sont vos nouveaux frameworks Python préférés ? Partagez vos avis sur les nouvelles implémentations de frameworks Python que vous utilisez

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

Avatar de IPreferCSharp
Membre actif https://www.developpez.com
Le 15/11/2016 à 11:42
la facilité d'apprentissage : La courbe d’apprentissage est effectivement plutôt rapide.
idéal pour l'enseignement de la programmation : Pour le coup, j'ai commencé par apprendre le C, puis le C#(ou java) et je trouve ça bien de commencer comme ça. Je pense que commencer par python est plus simple certes, mais
pas optimal.
Python est bien comme langage de script : Oui
une bonne documentation : Oui
une bonne communauté : Une communauté active oui.
Python est ouvert aux autres langages et technologies : Oui

Je pense qu'une force de python est aussi ses binding Qt (PyQt, PySide, PyOtherSide ...).
Beaucoup l'utilise pour des parties non-critiques en terme de perf (Deepin OS pour ses "widgets", Dropbox ...). Ça permet de faire des outils évolutifs et "jolie" rapidement (Pas juste du Quick & Dirty) notamment avec QtQuick

Aussi je pense que aujourd'hui les structures de données que l'on traite sont de plus en plus complexes et la gestion des types de python facilite bien la vie.

Beaucoup d'outils, pour à peu près tout.
Au niveau des IDE y'a le choix (Visual studio, VSCode, PyCharm, SublimeText, eclipse, Komodo )

Quelques lacunes cependant pour le développement d'applications lourdes, mise a part les binding Qt, y'as pas de véritable Framework bureau (Ou alors je ne les connais pas) mise à part Camelot et dip qui ne sont plus vraiment à jour.
Idem pour le déploiement des ces application lourdes qui nécessite d'embarqué python dedans ce qui les rend assez volumineuses.
5  0 
Avatar de GLDavid
Membre expert https://www.developpez.com
Le 15/11/2016 à 13:29
Bonjour

Je vais apporter une pierre, mais beaucoup risquent de me la jeter, à plus forte raison quand on sait que j'étais l'ancien responsable de cette section sur developpez.com.
Mais Perl n'a plus la côte. Et ce au bénéfice de Python.
A qui la faute? A Perl 6 bien sûr qui a joué au vaporware.
Perl était le langage de prédilection dans les sciences, plus particulièrement en bioinformatique.
Aujourd'hui, je vois de nombreux packages Perl transportés en Python. De même, pour des librairies en chimie ou biologie, les langages choisis sont C#, Java, C/C++ et ... Python.

@++
5  0 
Avatar de dourouc05
Responsable Qt & Livres https://www.developpez.com
Le 15/11/2016 à 12:11
Citation Envoyé par sazearte Voir le message
Son défaut je dirais c'est la manque d'ide, contrairement à java par exemple qui en a de très bon et à la pelle.
Python en compte pas mal. Personnellement, j'utilise principalement PyCharm (une version gratuite existe), mais Eric est aussi pas mal, sans oublier IDLE, Spyder, Wing… et sans doute pas mal d'autres.
4  0 
Avatar de Bktero
Modérateur https://www.developpez.com
Le 15/11/2016 à 13:47
J'ai répondu tout ça :
  • la facilité d'apprentissage
  • il est bien comme langage de Script
  • une bonne documentation
  • une pléthore de bibliothèques
  • une bonne communauté
  • la lisibilité du code
  • la rapidité de développement
  • Python tourne sur presque toutes les plateformes


mais je me suis aperçu trop tard que je voulais aussi rajouter un "autre" : l'interpréteur interactif. C'est franchement pratique pour essayer, faire des programmes de quelques lignes qu'on ne veut pas garder (je m'en sers pour générer des bouts de code C++ par exemple), bricoler, etc.
3  0 
Avatar de Jitou
Membre averti https://www.developpez.com
Le 15/11/2016 à 21:11
J'ai découvert Python par moi même il y a très peu de temps (au bout de 18 ans de programmation en fait !). J'en avais déjà entendu parlé auparavant mais sans motivation pour m'en servir et puis chez un client j'avais appris qu'il était utilisé par un presta pour faire quelques scripts importants dans une chaîne batch critique du SI. Mes collègues me disaient que personne ici ne connaissaient ce langage "abscons" hormis cette personne qui le maintenait, d'ailleurs c'était un peu sous forme d'un reproche car lorsqu'il était absent tout le monde était bien embarrassé pour résoudre certain pbs liés à ces maudits scripts, donc je n'avais entendu que de mauvais avis sur ce langage mis un peu à part ... et puis j'ai finalement décidé d'y jeter un oeil pour un besoin perso et là j'ai été conquis dès la deuxième ligne de code, en fait ça s'apprend en moins de 15 min, et donc en très peu de temps j'avais terminé un script qui répondait à la lettre à mon besoin (je suis très exigent). Maintenant je me demande pourquoi je ne mis suis pas mis plus tôt, je réalise aussi que PHP pour faire seulement du script ça n'a aucun intérêt, Python ça devrais être installé de base dans toute bonne distrib Linux de ce nom.

Maintenant pour apprendre un langage dans le cadre scolaire pourquoi pas mais je pense que Java est bien plus intéressant de ce point de vue là ...
3  0 
Avatar de tyrtamos
Expert éminent https://www.developpez.com
Le 17/11/2016 à 9:34
Bonjour,

J'ai découvert Python il y a 9 ans, et il est devenu mon langage principal et préféré.

Voilà un langage interprété (facile), moderne (POO), riche (nombreux modules externes) et très lisible (indentation).

Curieusement, il est reconnu comme "langage de script", mais moi je l'utilise principalement pour faire des programmes graphique (PyQt). Mon plus gros programme dépasse les 30000 lignes, et touche beaucoup de domaines de programmation (base de données relationnelle, impression/lecture de codes-barres, download/upload ftp, émission d'emails dans le monde entier, scan du réseau local, création de pages ftp, échanges avec Excel, etc..., ceci en multiplateforme Windows/Linux). Sous Windows, je passe en exe avec cx_freeze, et si nécessaire, je crée un programme à installer avec inno_setup. Avec ça, l'utilisateur ne sait même pas que c'est écrit en Python!

Concernant sa rapidité en tant que programme graphique, il n'a vraiment aucun problème puisque la bibliothèque graphique s'exécute en C++.

En ce qui concerne le développement, il est vrai qu'un petit outil de développement (y compris notepad++) suffit pour développer des petits programmes pour la console. Mais pour un programme plus gros, il me semble inévitable d'utiliser un outil plus performant. J'utilise eclipse + pydev depuis plusieurs années, et ça me convient tout à fait. Avec PyQt, j'utilise "Assistant" pour consulter l'aide en C++ (indispensable!), "Designer" pour dessiner les fenêtres complexes, et "Linguist" pour les programmes multi-lingues. J'ai aussi créé plusieurs programmes avec PyQt5 qui me manquaient pour le développement, par exemple un programme de recherche/remplacement de code multi-fichiers dans une arborescence du disque.

Dans les manques, je regrette que les éditeurs de Python ne prennent pas directement en charge:
- les outils d'analyse de code. J'utilise pylint, qui est bien, mais à mon avis insuffisant. Il y a en particulier des tournures de programmation qui ne sont pas pris en charge et qui donnent des messages inadaptés.
- les outils de création d'exécutables (type cx_freeze), voire d'installeurs (type innosetup). On peut voir la galère actuelle de cx_freeze avec Python3.5... Et même la version 5.0 qui vient de sortir ne marche pas avec Python3.4+PyQt5.
- une version "portable" de Python. Les versions actuelles marchent (j'utilise winpython quand c'est nécessaire), mais l'installation de modules supplémentaires n'est pas toujours possible.

Bref, quand je vois tout ce qu'on peut faire avec Python, je comprends qu'il se répande de plus en plus. Et j'espère que ça va continuer!

A contrario, je ne comprends pas pourquoi le forum Python voit une baisse aussi importante de fréquentation (à mon avis /10 depuis 1 ou 2 ans): Python est-il tellement facile qu'il n'y a plus de problème à traiter?
3  0 
Avatar de Cincinnatus
Membre éprouvé https://www.developpez.com
Le 15/11/2016 à 10:47
J'ai indiqué "Idéal pour l'enseignement de la programmation" mais pas "la facilité d'apprentissage".
Nous avons eu des stagiaires de découverte (3ème), je leur ai fait faire du python, tous les concepts n'étaient pas évidents pour tous.
Les tuples par exemple, et évidemment la POO. Par contre le typage dynamique et la possibilité de scripter des traitements procéduraux, ça, ça leur a plu !

J'ai aussi coché "bien comme langage de script", pour les stagiaires comme pour les vrais développements , permettant aussi de prototyper "quick and dirty" (). Surtout "une pléthore de bibliothèques" et "ouvert aux autres langages et technologies", vu qu'il sert de glu pour notamment récupérer des tableaux de données et certains modules sont appelés depuis des applications Java.
2  0 
Avatar de nathieb
Membre expérimenté https://www.developpez.com
Le 15/11/2016 à 22:24
Bonjour,

Je viens de découvrir python (enfin), après de longues années Java - PHP plus moultes tentatives (Perl, Rebol, C#, C ...)
et j'avoue que cela a été quelque chose de fascinant quelques réflexions :
- L'apprentisage rapide et linéaire dans la difficulté
- l'obligation de respecter l'indentation
- des possibilités de patterns de conception bien pensées (Pylon, Flask etc ...)
- la virtualisation des espaces de dev ( j'en ai rêvé en Java, mais quel plaie ... )
- L'interface avec d'autres langages

Python a de gros points forts, ces points faibles sont le déploiement en espace web, mal perçu ou mal compris
et peut être ses temps de traitements > à d'autres langages. Je vois surtout le retour de python a travers le Cloud
et les outils d'administrations qui vont avec.
Je suis simplement surpris par le manque d'activité du forum français, mais peut être que je me trompe

Java mieux que python en apprentissage, je doute (sauf pour la prog objet) ... quand je vois la différence pour ouvrir un fichier
en Java et écrire dedans, par contre effectivement Java est mieux pour l'apprentissage d'architectures évoluées (JEE).

C'est toujours pareil, quel est le besoin

Olivier
2  0 
Avatar de Ah_Kin
Membre averti https://www.developpez.com
Le 18/11/2016 à 13:45
Autre --> à préciser.

Pas de champ qui s'affiche pour à préciser.

Donc je précise que c'est peut être parce que sachant qu'une consultante de pole emploi mal lunée s'est mis dans la tête de me dire que je trouverai jamais de travail en tant que développeur, qu'elle m'a montré le premier cv pourri qu'elle a trouvé sur google image en me disant regarde comment on fait un cv, et qu'elle m'a dit que franchement python on s'en fout c'est dépassé c'est pas ça qu'"on" cherche.

Il y a moult autres cases que j'aurais bien coché mais je voulais mettre en avant cette histoire.
2  0 
Avatar de Elros
Membre éprouvé https://www.developpez.com
Le 15/11/2016 à 11:25
Citation Envoyé par mrqs2crbs Voir le message
je pense que Python est si présent,
parce que c'est le langage le plus enseigné dans les écoles et universités américaines.
Et de plus en plus dans les écoles françaises.
1  0