Developpez.com

Club des développeurs et IT pro
Plus de 4 millions de visiteurs uniques par mois

TIOBE : le langage de programmation C est à son plus bas score depuis 15 ans
Quelles sont les raisons qui expliquent sa baisse de popularité ?

Le , par Michael Guilloux, Chroniqueur Actualités
Conformément à sa tradition, TIOBE vient de publier son classement mensuel des langages de programmation en fonction de leur popularité. Pour rappel, les scores attribués par TIOBE aux différents langages sont calculés à partir d’une formule qui évalue le nombre de fois qu’un langage spécifique est recherché sur les moteurs de recherche comme Yahoo, Google, Wikipédia, Bing, Amazon, YouTube et Baidu.

Pour ceux qui suivent de près l’index TIOBE, le classement du mois d’août continue d’être dominé dans l’ordre par Java (19,01 %), C (11,3 %), C++ (5,8 %), C# (4,9 %) et Python (4,4 %). Toutefois, c’est au niveau des scores de popularité que s’observent les changements dans le top 5 au cours du mois d’août. Sous les projecteurs, le langage C voit sa popularité baisser. S’il reste le numéro 2 du classement depuis plus d’un an et le seul concurrent sérieux de Java, le langage de programmation inventé par Dennis Ritchie a perdu 3,43 points de pourcentage par rapport au mois d’août 2015. Le langage C se retrouve ainsi à son niveau le plus bas depuis le lancement de l’index TIOBE en 2001. Il est également important de noter que le score de C a continué à baisser, mois après mois, depuis novembre 2015 où il se situait à 17,14 %.


Index TIOBE : top 20 des langages de programmation les plus populaires au mois d’août 2016


Index TIOBE : évolution des scores de popularité des langages de programmation depuis 2001

Qu’est-ce qui pourrait expliquer le fait que le langage C voit sa popularité en baisse ?

À cette question, TIOBE a apporté plusieurs réponses qui paraissent toutes pertinentes. La première cause de cette chute, selon TIOBE, serait le fait que C a du mal à s’imposer sur certains marchés, notamment dans les domaines en plein essor tels que le développement d’applications web et mobiles.

Comme le montre également le dernier classement de l'IEEE des meilleurs langages de programmation, le top 10 des langages pour le Web est composé de Java (#1), Python (#2), C# (#3), PHP (#4), JavaScript (#5), Ruby (#6), Go (#7), Scala (#8), HTML (#9) et Perl (#10). Le langage C ne figure donc pas parmi les 10 meilleurs langages. En ce qui concerne le développement mobile, les langages phares pour Android (Java) et iOS (Objective-C et Swift) sont également très prisés.

Une autre raison mise en avant par TIOBE est que, contrairement aux autres grands langages comme Java, C++ ou C#, le langage C est resté sensiblement le même au fil du temps. Cela s’explique notamment par le fait que sa communauté de développeurs a décidé de mettre l’accent sur la performance plutôt que d’ajouter de nouvelles fonctionnalités. « Il y a un "nouveau" standard C11 disponible, mais il ne contient que des modifications mineures », ajoute TIOBE. Il est donc possible que les programmeurs trouvent le langage de moins en moins adapté à leurs projets quotidiens au fil du temps, dans un monde de l'informatique qui ne cesse de changer.

Il faut aussi noter que des changements comme l’ajout de fonctionnalités C++ dans C pourraient permettre au langage de maintenir sa popularité. Mais comme l’explique TIOBE, en ajoutant des fonctionnalités C++, le langage C deviendrait tout simplement C++, ce qui serait redondant. « Ajouter les fonctionnalités C++ n'est également pas envisageable parce que c'est la raison pour laquelle le langage C++ est déjà là. Donc C est un peu coincé. »

Enfin, TIOBE note que, contrairement à de nombreux langages, aucune grande entreprise ne fait la promotion de C : « Une autre raison encore pour laquelle C est dans le pétrin, c’est qu'il n'y a pas de grande entreprise qui fait la promotion du langage. Oracle prend en charge Java, Microsoft prend en charge C++, C# et TypeScript, Google soutient Java, Python, Go, Dart et JavaScript, Apple encourage Swift et Objective-C, etc., mais aucun d'entre eux ne soutient C publiquement. »

Source : TIOBE

Et vous ?

Qu’en pensez-vous ?

Voir aussi :

Meilleurs langages de programmation en 2016 : découvrez les langages en forte croissance et les plus demandés par les employeurs, selon l'IEEE


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Andarus Andarus - Membre actif https://www.developpez.com
le 31/08/2016 à 14:33
D'un autre coté C n'a peut être plus vocation à être un langage "grand public".
Avatar de gstratege gstratege - Membre régulier https://www.developpez.com
le 31/08/2016 à 15:27
Le C :
Avatar de Mingolito Mingolito - Membre chevronné https://www.developpez.com
le 31/08/2016 à 15:47
Quand on regarde la courbe on voie que le C est en baisse, et l'assembleur en hausse.
Ça me parait pertinent, l'assembleur est quand même plus facile à apprendre et bien plus efficace en terme de productivité que le C

Avatar de TaoSc TaoSc - Membre régulier https://www.developpez.com
le 31/08/2016 à 15:58
Je ne vois pas en quoi c'est véritablement un problème. Et le fait qu'il reste plus "simple" est ce qui fait, pour moi, sa force. J'ai beau beaucoup aimer le C++, je ne suis pas sûr qu'atteindre la complexité de celui-ci serait bénéfique au C.

D'ailleurs aucun de ces deux langages ne me semble vouer à disparaître ; l'article dit ;
le fait que C a du mal à s’imposer sur certains marchés, [tels que] le développement d’applications web et mobiles
Mais les compilateurs JIT ou autres qui font tourner du code JavaScript, PHP, Python, etc. sont écrits en C / C++... En fait pour moi c'est plus un faux problème ; le fait de ne pas être le langage à la mode, de ne pas être sur le devant de la scène ne pourra qu'aider les personnes standardisant le C à faire de bons choix pour le maintenir sur le long terme et lui permettre de rester le meilleur dans son domaine plutôt que de devoir faire face à la pression de développeurs voulant des nouveautés de trop haut-niveau qui n'auraient que peu de sens dans un langage comme celui-ci.
Avatar de CaptainDangeax CaptainDangeax - Membre actif https://www.developpez.com
le 31/08/2016 à 15:59
Je suis d'accord avec le post de Mingolito. Mon précédent projet personnel je l'ai fait en C/Microchip dsPIC. Et j'en ai bavé, croyez moi. Le prochain, ce sera de l'assembleur 8051, beaucoup plus mieux, surtout la maîtrise totale des timings.
Au boulot, c'est Bash et Python.
Avatar de SkyZoThreaD SkyZoThreaD - Membre expérimenté https://www.developpez.com
le 31/08/2016 à 17:11
Citation Envoyé par CaptainDangeax Voir le message
Je suis d'accord avec le post de Mingolito. Mon précédent projet personnel je l'ai fait en C/Microchip dsPIC. Et j'en ai bavé, croyez moi. Le prochain, ce sera de l'assembleur 8051, beaucoup plus mieux, surtout la maîtrise totale des timings.
Au boulot, c'est Bash et Python.
C'était de l'ironie je pense
Quant à la baisse du C .... il reste numéro 2... On est loin de la fin
Avatar de temoanatini temoanatini - Membre averti https://www.developpez.com
le 31/08/2016 à 17:45
Peut-être aussi que pour certains langages, les développeurs qui les utilisent n'ont pas les même façons de rechercher.
Par exemple, plutôt regader dans la doc que de taper directement dans un moteur de recherche... je sais pas
Avatar de MikeRowSoft MikeRowSoft - Provisoirement toléré https://www.developpez.com
le 31/08/2016 à 17:47
Sachant qu'il est possible d'écrire un analyseur syntaxique et un analyseur grammatical avec le langage PHP je comprend partiellement sont progrès.

Par contre la baisse d'usage du langage C... Aucune idée si se n'est les kits de développements ou la popularité suite a l'enseignement ou la pratique personnelle ou professionnelle.
Avatar de awesomeman awesomeman - Membre régulier https://www.developpez.com
le 31/08/2016 à 17:51
le C plus difficile que l'assembleur ?? pour moi c'est plutot l'inverse ..
ca fait 3 mois que j'essaye de me mettre à l'assembleur et j'ai énormément de mal à tout comprendre . Pour moi il y a trop de choses essentiel à retenir en assembleur . en c tu peux bidouiller plus facilement . (mais moins opti que l'asm je pense ...)
Avatar de CoderInTheDark CoderInTheDark - Membre éclairé https://www.developpez.com
le 31/08/2016 à 17:54
Quand j'ai appris le C avec Visual studio, le prof nous tapait sur les doigts car on mélangeait C et C++.
On faisait du copier coller du net.
On a longtemps été dans le flou, on voulais pas comprendre que c'était deux choses différentes.

Au final j'ai trouvé le
C++ un peu plus simple, mais pas tant que ça.
Je n'aimais pas en autre malloc sizeOf c'est plus simple en C++

J'ai arrêté les deux car je savais pas quoi choisir comme librairies pour enrichir mon CV.
Ca changeait trop d'une boîte à l'autre.
Et en plus on me disait que s'était surtout pour le temps rééel ou pour les solutions hautes performances.
J'ai utilisé GTK et même pour du C c'était claire sans être de lobjet

Le C c'est surtout pour le noyau Linux ?
Offres d'emploi IT
Ingénieur moa logiciel H/F
Safran - Ile de France - Villaroche
Architecte / concepteur électronique analogique H/F
Safran - Ile de France - Éragny (95610)
Expert Technico Fonctionnel Sharepoint H/F
Safran - Ile de France - Corbeil (91)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil