Ces questions n'ont été posées qu'aux développeurs ayant sélectionné C++ comme l'un de leurs trois principaux langages de programmation.

C++

Quelles normes C++ utilisez-vous régulièrement ?

Matt GodboltCréateur de Compiler Explorer.

« Cela fait plaisir de constater l'adoption du C++ moderne. Une personne sur cinq est sur la dernière version, ce qui est génial, et beaucoup d'autres prévoient de passer au moins à C++17 l'an prochain. Les modules et les concepts semblent être de puissants facteurs de motivation. »

Migration des normes de C++

Andreas KlingCréateur de SerenityOS et de la chaîne YouTube éponyme

« Il est logique que beaucoup de personnes qui étaient déjà sur C++17 aient envie d'adopter C++20. »

Est-il prévu que votre projet actuel utilise l’une de ces fonctionnalités C++20 au cours des 12 prochains mois ?

Andreas KlingCréateur de SerenityOS et de la chaîne YouTube éponyme

« Les modules arrive en tête des classements, comme prévu. Les temps de build de C++ se dégradant chaque année, il sera très intéressant de voir comment les gens vont utiliser les modules pour contrer cette tendance. »

Quel IDE / éditeur utilisez-vous le plus pour le développement C++ ?

Quels frameworks de tests unitaires utilisez-vous régulièrement ?

Matt GodboltCréateur de Compiler Explorer.

« Il est tout de même décevant de voir qu'un tiers des développeurs n'écrivent aucuns tests unitaires. »

Comment gérez-vous vos bibliothèques tierces en C++ ?

Matt GodboltCréateur de Compiler Explorer.

« Près de trois quart des personnes interrogées ne disposent pas d'une bonne solution de packaging ; le fait de devoir générer les bibliothèques séparément, de faire des prebuilds ou d'utiliser la gestion des paquets du système, implique soit un travail de développeur, soit une dépendance vis-à-vis de parties externes pour les construire. Cela peut entraîner des retards pour les nouvelles versions et ajoute de la complexité à la mise à niveau ou au changement de compilateurs. »

Andreas KlingCréateur de SerenityOS et de la chaîne YouTube éponyme

« Ce ne serait pas C++ si nous n'avions pas 40 solutions concurrentes à ce problème, mais je ne peux m'empêcher de me demander si nous ne nous porterions pas tous mieux si nous en choisissions une et que nous nous y tenions. »

Quelles méthodes de signalement d'erreur sont autorisées sur votre projet actuel (dans le cadre de votre travail ou de vos études) ?

Quel·s modèle·s de projet ou système·s de build utilisez-vous régulièrement, le cas échéant ?

Quels compilateurs utilisez-vous régulièrement ?

Matt GodboltCréateur de Compiler Explorer.

« Il est intéressant de voir que les compilateurs open source arrivent en tête de liste des compilateurs régulièrement utilisés. Dans mon monde, sous Linux, les compilateurs MSVC ne sont pas disponibles, mais j'ai toujours imaginé qu'il y avait plus de programmeurs sous Windows et que l'utilisation de MSVC serait donc plus importante. »

Andreas KlingCréateur de SerenityOS et de la chaîne YouTube éponyme

« Il est très intéressant de voir que GCC progresse plus que Clang. On dirait que GCC a plus progressé avec C++20. »

Quels autres langages de programmation utilisez-vous dans vos projets en plus de C++ ?

Parmi les outils suivants, lesquels utilisez-vous (vous ou votre équipe) pour appliquer les directives ou autres opérations d'analyse ou d'amélioration de la qualité du code ?

Andreas KlingCréateur de SerenityOS et de la chaîne YouTube éponyme

« La mise en forme automatique du code est encore largement sous-estimée. Cela peut paraître bête, mais en utilisant un outil comme ClangFormat, il n'y aura plus jamais de dispute à propos du style de code ! »

Merci du temps que vous nous avez accordé !

Nous espérons que vous avez trouvé ce rapport intéressant. N'hésitez pas à le partager avec vos ami·e·s et collègues.

Rejoignez le JetBrains Tech Insights Lab

Participez à des enquêtes et à des études sur l'expérience utilisateur pour aider les produits JetBrains à gagner en facilité d'utilisation, mais aussi en puissance. En participant à nos études, vous aurez également la possibilité de gagner des récompenses.

Si vous avez des questions ou des suggestions, contactez-nous à surveys@jetbrains.com.