Stroustrup : la complexité, un impératif inéluctable pour le futur du code
Le créateur de C++, Bjarne Stroustrup, réitère son diagnostic tranchant : la complexité n'est pas un défaut, mais une nécessité inhérente à l'évolution du paysage informatique. Une vision qui, loin de surprendre, dérange certains.
L'obsession de la simplicité, une illusion ?
Stroustrup, véritable figure de proue du développement logiciel, s'inscrit dans une tradition de critique acerbe envers les approches simplistes. Il le déclare clairement : « Il n’existe aucun moyen d’apprendre à programmer sur Internet, et si vous n’êtes pas ‘assez intelligent’ vous n’aurez pas le succès dans l’industrie ». Une formulation, pour le moins, peu encourageante. Cette perspective, déjà connue des initiés, suscite un débat animé au sein de la communauté.
Il ne s'agit plus, selon lui, de privilégier des langages « faciles », mais de comprendre les mécanismes sous-jacents. L'intégration croissante de l'intelligenceartificielle, couplée à l'essor des bibliothèques modernes, a engendré une complexité structurale, un besoin impérieux de contrôle précis sur le code. Une évolution qu'il compare à une transformation inévitable.

Deux catégories, une réalité
Stroustrup divise ainsi le monde de la programmation en deux catégories bien distinctes. D'un côté, les codeurs « sans code », une vision qu'il juge « inacceptable et honteuse ». De l'autre, ceux qui, enveloppés dans des bibliothèques complexes, se contentent d'incorporer des modules préfabriqués, sans véritable maîtrise du processus. Un fossé qui, selon lui, menace la robustesse et la fiabilité des systèmes.

C++ : la complexité assumée
Le C++, bien que souvent perçu comme un langage aride et difficile à appréhender, reste un pilier central pour les projets à grande échelle. Sa complexité est délibérée, un choix architectural qui lui permet de gérer efficacement des besoins de performance et de sécurité spécifiques. Il n'est pas le plus grand langage en termes de taille, loin de Java ou C#, mais sa « haute complexité » lui confère une flexibilité et une puissance inégalées.
Il souligne avec ironie : « Il n'y a que deux types de langages de programmation : ceux que les gens détestent et ceux qu'on n'utilise pas ». Un jugement qui, malgré sa concision, révèle une profonde conviction.

Au-delà des mots, des faits
La complexité ne se mesure pas en lignes de code, mais en capacités. Les langages modernes, avec leur dépendance aux bibliothèques externes, s'avèrent souvent contraints par leurs propres dépendances. Ils manquent de la flexibilité et de la puissance du C++, particulièrement dans les applications critiques où la fiabilité est primordiale. La tendance actuelle, loin de simplifier, tend à complexifier davantage les choses, au nom de la commodité.
Stroustrup conclut avec une phrase qui résonne : « La perfection est l'ennemi du bien. » Un adage qui, dans le contexte de la programmation, est plus pertinent que jamais. La solution ne réside pas dans la simplification à tout prix, mais dans une compréhension profonde des enjeux et une maîtrise des outils.
