Les langages de programmation évoluent au fil des usages et des technologies. Quels sont les langages de programmation les plus en vogue aujourd’hui ? La rédaction ORSYS vous propose son classement 2022. Nous faisons le point avec Serge Gueguen, responsable de l’évolution de l’offre numérique d’ORSYS.
Les langages de programmation, eux aussi, suivent la mode. Sur les quelque 9000 langages référencés par HOPL qui dresse l’historique des langages de programmation, seuls 150 environ sont actuellement utilisés, selon l’index communautaire de programmation TIOBE.
Arrivée de nouvelles technologies, nouveaux comportements et méthodes de travail, nouvelles mises à jour… les langages de programmation vont ainsi être plus ou moins favorisés par les développeurs et en demande sur le marché IT.
Or, qui dit nouvelles opportunités d’emploi, dit aussi nouveaux besoins de formation et de perfectionnement. En tant qu’organisme de formation, ORSYS a vu évoluer la demande. La rédaction a donc établi son propre classement 2022, avec l’aide de Serge Gueguen, ingénieur pédagogique et responsable de l’évolution de l’offre numérique.
Note : Le classement a été établi en fonction du nombre de participants à nos formations sur un an, entre juin 2021 et juin 2022.
1. JavaScript
Du point de vue d’ORSYS, cette première position dans le classement s’explique de façon très pragmatique : c’est le langage de programmation pour lequel nous proposons le plus de formations. Cela n’a rien d’un hasard puisque, comme le fait remarquer Serge Gueguen, JavaScript est un langage incontournable. « On va le retrouver dans toutes les applications web côté client. C’est le langage qui permet de rajouter de l’interactivité aux pages web en étant exécuté par le navigateur. »
Derrière chaque interface web se cache donc JavaScript, le langage interprété par défaut par les navigateurs. Normalisé par le W3C (World Wide Web Consortium), organisme international de standardisation, il est en effet le langage qu’on utilise en développement web pour la programmation de l’interface, au côté de HTML pour le contenu et les CSS pour la mise en page.
Il doit cependant en grande partie sa popularité à son écosystème. Un langage dynamique orienté front end, JavaScript s’utilise au travers de frameworks de développement pour plus d’efficacité. « Les plus populaires d’entre eux aujourd’hui sont Angular, un framework open source créé à l’origine par Google, et React, qui a été conçu par les équipes de Facebook. » Autant d’éléments qui assurent pour encore longtemps à JavaScript sa place de premier de la classe.
2. Python
Si la première place lui échappe de peu, Python jouit néanmoins d’une popularité indéniable. (Voir notre article dédié) « On a de plus en plus de demandes de formations pour Python », confirme Serge Gueguen. « Ce qui se traduit de notre côté par une augmentation du nombre de cours ! Sept nouveaux cours ont été créés ces derniers mois, notamment Python pour la data science, Python automatisez vos tâches bureautiques et Python, initiation au traitement de données économiques et scientifiques. »
La plus grande force de Python : son extrême polyvalence, doublée d’une grande accessibilité. Étant le langage utilisé dans les écoles pour initier des enfants de niveau CM1/CM2 à la programmation, on comprendra aisément qu’il puisse être appris et mis en œuvre par des non-informaticiens en milieu professionnel. Y ont recours, par exemple, les data scientists, qui ne sont pas informaticiens de formation. L’usage de Python est par ailleurs gratuit. Il n’appartient à aucun éditeur et peut s’utiliser sur à peu près n’importe quelle machine.
Mais, surtout, il correspond à de nombreux domaines d’application. « Avec Python, on peut développer des applications pour programmer des objets connectés, des cartes Arduino… Il peut également s’utiliser pour le développement web côté serveur via le framework Django, ou pour faire de la cartographie, du traitement d’image… » D’où les bibliothèques Python, qui donnent accès à un large éventail d’outils. « Beaucoup de bibliothèques ont notamment été fournies pour le calcul scientifique, le traitement de données massives (big data) avec la bibliothèque Pandas ou le framework Spark et l’intelligence artificielle. » Nous venons même d’ajouter une formation Python qui utilise le supercalculateur d’Exaion (filiale d’EDF), un des plus gros calculateurs d’Europe ! En résumé, Python est un langage simple et très accessible, qui permet de travailler sur des sujets très en vogue.
3. Java
Faisant partie des langages les plus anciens, Java, dont la notoriété n’est plus à faire, perd des points face à la jeunesse pleine de promesses de Python ou en raison d’un apprentissage jugé plus difficile. Il n’en reste pas moins sur le podium des langages les plus recherchés.
La principale différence entre Python et Java est que le premier est davantage orienté vers des métiers spécifiques (cartographes, data scientists…). Java est certes polyvalent, mais orienté vers les applications liées aux systèmes d’information. « On est dans l’IT pure, dans le traitement de l’information, mais au sens SI. » Succédant à Cobol, qui était le langage utilisé pour le traitement de l’informatique de gestion (banques, compagnies d’assurance…), c’est lui que l’on va retrouver aujourd’hui au cœur des SI, « tout en venant compléter les traitements actuels en Cobol », précise Serge Gueguen.
« Aujourd’hui, dans la majorité des cas, on va trouver Java interfacé avec des bases de données Oracle. Et, un peu comme JavaScript, on aura recours à des frameworks, des outils pour développer des applications web côté serveur…tout un écosystème particulièrement riche qui se bâtit autour du langage depuis une vingtaine d’années. » À noter que Java est également le langage de développement mobile avec le système d’exploitation Android. Il y a donc peu à craindre pour ce vétéran : en 2022, des compétences en Java sont encore très recherchées.
4. C#
Le langage C# est édité par Microsoft, et dépend du framework .NET dont les nombreuses fonctionnalités sont très appréciées. Il est le principal concurrent de Java. « Les deux langages sont arrivés sur le marché à peu près en même temps, et leurs différences se situent surtout au niveau de leur utilisation. » En effet, comme l’explique Serge Gueguen, « le principal atout de C# et .NET, c’est d’appartenir à Microsoft » : la bureautique, les développements Exchange (messagerie), les interfaçages pour le travail collaboratif côté intranet… Tout est fait avec C#.
L’environnement .Net a donc comme avantage par rapport à l’environnement Java, un interfaçage simplifié pour l’informatique interne des entreprises. Un détail qui explique, entre autres, sa bonne position dans le classement – et menace constamment celle de Java.
5. C et C++
Enfin, en dernière position de notre classement, C et C++. Des langages qui, contrairement à ce qu’on pourrait croire, ne sont pas tout jeunes puisqu’ils datent des années 1970. Et leur principal atout réside dans leur performance.
S’ils sont assez complexes à apprendre, le jeu peut en valoir la chandelle. Pour commencer, C et C++ sont des langages compilés : le code doit être traduit par un compilateur avant d’être exécutable, c’est-à-dire d’être interprété directement par la machine. « Inversement, C#, Python, Java et JavaScript sont des langages interprétés. », précise Serge Gueguen. « L’intérêt est que le code peut ainsi fonctionner sur des machines différentes, mais on doit passer par une phase d’interprétation du code avant qu’il puisse être exécuté. Les C et C++, quant à eux, peuvent être exécutés directement sur la machine, ce qui permet de gagner en rapidité et en performance. »
Le C est un langage de programmation dite « impérative » (répondre à des instructions, manipuler des variables). Le C++ aussi, mais il apporte en complément la dimension programmation objet… « On peut dire que le C++ est du C orienté objet. La syntaxe de base entre les deux langages est la même, mais le C++ offre un niveau conceptuel supplémentaire. »
Dans tous les cas, C et C++ sont très recherchés dans les domaines nécessitant de la performance : IoT, systèmes embarqués, systèmes d’exploitation (Android, Unix, Linux…), robotique, industrie du jeu vidéo… Tout porte à croire que ces « ancêtres » de la programmation ont encore un bel avenir.
Rust, Go, Swift… les futures stars
Derrière ce top 5, d’autres langages créés récemment montent en puissance. C’est notamment le cas de Rust. Conçu par Mozilla Research en 2010, ce langage séduit par sa rapidité, avec des performances comparables à celles de C ou C++, et par son économie et sa sécurité en mémoire. Sans environnement d’exécution ni ramasse-miettes pour gérer la mémoire, il s’exécute à merveille sur Windows, macOS, Linux ou des systèmes embarqués. Son compilateur signale les erreurs de code et vous aide à les corriger. Il est également très prisé en tant que langage système.
Go est aussi un langage tendance, notamment pour le développement back end et la programmation système. Il est aussi utilisé dans certains développements blockchain. Inspiré de C et de Pascal, Go est un langage compilé développé en 2009 par Google. Ses créateurs voulaient un langage facile à utiliser comme Python, rapide à exécuter comme C++ mais très vite compilable. Go est un langage très facile à apprendre.
Swift est aussi un langage qui monte. Créé par Apple en 2014, il est open source et constitue le socle de développement des appareils Apple sous macOS, iOS, watchOS et tvOS. Il assure un développement rapide des applications, mais n’est pas très adapté aux autres plateformes.