Les jeunes développeurs n'utiliseraient plus le C.
"C'est trop difficile, un truc pour les vieux" semblent-ils dire.
C'est en tout cas l'enseignement que Michael Barr, rédacteur en chef du magazine "Embedded Systems Design", tire de son expérience.
L'étude qu'il a menée pendant plus de dix ans montre pourtant que ce langage est, de loin, le plus utilisé dans les projets de logiciels embarqués.
Mieux : il l'a toujours été, et de manière incontestable, sur les treize dernières années.
Quant à sa popularité, bien loin de s'essouffler, elle ne cesse de progresser.
Ce graphique est extrait de l'étude de Michael Barr.
On notera que la rupture en 2004 s'explique par un changement de question : précédemment les développeurs pouvaient donner plusieurs réponses ("Quel(s) langage(s) utilisez-vous ?", après cette date seul le langage préféré est pris en compte.
Les courbes montrent que l'usage de l'assembleur comme langage exclusif d'un projet semble connaitre un déclin inéluctable.
Il montre également que, de manière continue, le C prend des "parts de marché" au C++.
Un résultat qui défie les prédictions et contredit les idées reçues, car si le C++ a connu une vague d'adoption jusqu'en 2001, il semble, depuis, stagner.
La fin du C n'est donc a priori pas d'actualité.
Deux raisons majeures l'expliquent.
Premièrement parce que les compilateurs pour le C sont disponibles pour une vaste majorité de micro-processeurs, qu'ils soient en 8, 16 ou 32 bits.
Deuxièmement, parce que le C est le parfait compromis entre un langage de haut-niveau et de bas-niveau.
D'après Michael Marr, on ne ferait pas mieux pour tout ce qui touche aux processeurs et aux pilotes.
Or ce marché explose.
Le vieillissement et le non renouvellement des programmeurs en C d'une part, et l'augmentation de l'importance des logiciels embarqués d'autre part n'annoncent rien de bon pour l'avenir.
La faute en incomberait à l'école : "le développement de process et l'architectures des firmware pour les logiciels embarqués s'apprennent aujourd'hui sur le tas", constate le rédacteur en chef de "Embedded Systems Design".
Malheureusement, cette forme d'enseignement n'est pas des plus efficaces. Le jeune programmeur "n'a souvent que peu de retour - quand il en a - [et] le découragement est souvent au rendez-vous".
"Bien qu'ils soient intelligents et talentueux, mes jeunes amis ne connaissent [donc] pas vraiment le C. Et ils s'en moquent", regrette-t-il. "Pourtant, il faudra bien continuer à écrire les logiciels embarqués pour répondre à une demande toujours plus forte. De nouveaux langages peuvent aider, mais ils ne permettront jamais une rétro-compatibilité avec toutes les architectures des CPU que nous avons connues jusqu'ici et que nous allons encore utiliser pendant plusieurs décennies"
Pour renouveler sa communauté de programmeurs, le C n'aurait donc pas le choix.
Il va devoir se rendre séduisant.
Et vous qu'en pensez-vous ?
Le C est-il le meilleur langage pour les logiciels embarqués ?
L'avez-vous appris sur le tas ?
Partagez-vous le diagnostic et les inquiétudes de Michael Marr ?
A lire aussi :
Tout le C sur Développez.com.
Source : "Les vrais hommes programment en C", article paru dans "Embedded Systems Design".
Le C est-il encore un langage d'avenir ?
Une étude montre que les jeunes ne l'apprennent plus
Le C est-il encore un langage d'avenir ?
Une étude montre que les jeunes ne l'apprennent plus
Le , par Gordon Fowler
Une erreur dans cette actualité ? Signalez-nous-la !