GitHub a nommé le C++ langage de l'année à la croissance la plus rapide
La plateforme GitHub, le plus grand dépôt de code open source au monde, a publié son rapport annuel Octoverse pour 2021. La grande surprise a été la reconnaissance du langage C++ comme celui connaissant la croissance la plus rapide en nombre de contributeurs. Sur l'année, la croissance a été de 12,2 %, devançant JavaScript (10,8 %) et Python (9,7 %).
« Le C++ connaît une renaissance grâce au développement des technologies cloud, des moteurs de jeux et des systèmes temps réel », commente Alexeï Petrov, développeur principal chez Yandex. « Les normes C++17 et C++20 ont ajouté des modules, des coroutines et des concepts, rendant le langage compétitif même face à Rust et Go ».
Selon les données de GitHub, le nombre de nouveaux dépôts en C++ a augmenté de 14 % par rapport à 2020. Les principaux moteurs sont les projets dans le domaine de l'apprentissage automatique (TensorFlow, PyTorch ont un noyau C++), le développement de jeux (Unreal Engine 5) et les backends à forte charge (par exemple, les bases de données ClickHouse et RocksDB).
Les experts lient cette croissance à la transition de l'industrie vers C++20, qui a simplifié l'écriture de code sécurisé. « Avant, le C++ effrayait les débutants avec la gestion manuelle de la mémoire », note Maria Sokolova, auteure de cours sur Stepik. « Mais les outils modernes comme Smart Pointers et RAII abaissent le seuil d'entrée. De plus, en 2021, la bibliothèque Boost 1.77 est sortie avec le support des coroutines ».
Il est à noter que dans le top 10 des langues par nombre absolu de commits, le C++ occupe la 4e place après JavaScript, Python et Java. Cependant, c'est précisément la dynamique de croissance qui en fait le « langage de l'année » selon GitHub. Le rapport souligne également que 23 % de tous les nouveaux contributeurs sur GitHub en 2021 ont essayé le C++ pour la première fois.
« Ce n'est pas juste un effet de mode », résume Tim Lee, ingénieur chez Microsoft. « Le C++ reste indispensable pour la programmation système, où la vitesse et le contrôle du matériel sont importants. Tant qu'il y aura des processeurs, de la mémoire et des systèmes d'exploitation, le C++ sera demandé ».
Pour la communauté PythonLib, c'est un signal important : si vous développez des bibliothèques hautes performances en Python, leur noyau est souvent écrit en C++ (via pybind11). La demande pour ces spécialistes en 2022, selon les prévisions de HeadHunter, devrait encore augmenter de 20 %.