Veuillez laisser vos coordonnées, nous vous enverrons notre aperçu par e-mail.
Je consens à ce que mes données personnelles soient traitées afin d'envoyer du matériel de marketing personnalisé conformément à la directive sur la protection des données. Politique de confidentialité. En confirmant la soumission, vous acceptez de recevoir du matériel de marketing
Merci !

Le formulaire a été soumis avec succès.
Vous trouverez de plus amples informations dans votre boîte aux lettres.

Innowise est une société internationale de développement de logiciels à cycle complet fondée en 2007. Nous sommes une équipe de plus de 1800+ professionnels de l'informatique qui développent des logiciels pour d'autres professionnels dans le monde entier.
À propos de nous
Innowise est une société internationale de développement de logiciels à cycle complet fondée en 2007. Nous sommes une équipe de plus de 1600+ professionnels de l'informatique développant des logiciels pour d'autres professionnels dans le monde entier.

Le langage Carbon de Google pourrait remplacer le C++

Lors de la conférence CPP North, Chandler Carruth, ingénieur logiciel principal chez Google, a annoncé la sortie du langage de programmation Carbon. Carbon de Google est un langage open-source expérimental qui se veut plutôt le successeur de C++, mais pas son remplaçant. Dans cet article, nous examinerons de plus près Carbon, ses objectifs, son potentiel et les raisons pour lesquelles C++ a besoin d'un successeur.
La langue carbone de Google's

Quel est le problème avec le C++?

Selon le Indice TIOBE pour août 2022, C++ occupe la 4e place après Python, C, et Java. Depuis 2001, le C++ n'est jamais descendu en dessous de la 5e place, ce qui indique la grande popularité de ce langage de programmation malgré son âge (première apparition en 1985). Le C++ présente de multiples avantages cruciaux pour le développement de logiciels à performances critiques. Alors pourquoi a-t-il besoin d'un successeur?Comme l'explique Chandler Carruth, le C++ ne permet pas d'atteindre les principaux objectifs du langage. Il s'agit notamment de la prise en charge des logiciels à performances critiques, de la simplicité de la syntaxe, de l'évolution du langage, des systèmes modernes et de la robustesse de la sécurité. Les caractéristiques spécifiques du langage et les problèmes bureaucratiques empêchent le C++ de s'améliorer progressivement.En ce qui concerne les particularités du langage, le C++ a accumulé une dette technique importante tout au long de son évolution. En outre, il a hérité de nombreuses caractéristiques du langage C. En outre, les utilisateurs de C++ donnent la priorité à la compatibilité ascendante pour soutenir les écosystèmes C/C++ existants. Dans le même temps, la compatibilité ascendante ne permet pas de corriger la dette technique, et le processus d'évolution du C++ rend encore plus difficile la mise en œuvre d'améliorations.En ce qui concerne les problèmes bureaucratiques, le processus d'amélioration du C++ est considérablement ralenti par un comité (WG21) qui se concentre sur la normalisation et non sur la conception. Le WG21 utilise des processus en cascade léthargiques qui entraînent des retards dans la prise de décisions cruciales. De plus, le comité a restreint l'accès à la plupart des experts en C++ et ne représente que certaines entreprises et nations, ignorant la grande communauté C++.

Objectifs du langage de programmation Carbon

En tant que langage successeur, le carbone a hérité de la technologie les objectifs initiaux du C++ et en a reçu un autre.
Langage du carbone
Basé sur une approche de langage successeur, Carbon se concentre sur 3 points majeurs qui répondent aux défis existants du C++ et nous permettent de considérer Carbon comme un projet prometteur: l'interopérabilité, la migration et l'évolution du langage. En s'appuyant sur ces points, les créateurs de Carbon s'efforcent de se débarrasser de la dette technique du C++, de conserver l'accès aux écosystèmes existants, d'assurer des améliorations rapides et d'éviter la rétrocompatibilité en utilisant des mises à jour basées sur des outils.

Quelles sont les promesses de Carbon?

Les informations disponibles à l'heure actuelle nous permettent de considérer Carbon comme un projet très prometteur. En ce qui concerne l'aspect pratique du nouveau langage de programmation, Chandler Carruth affirme que nous pouvons attendre de Carbon une grammaire plus simple, des mots-clés introducteurs (c'est-à-dire fn et var), un système générique vérifié par définition et une courbe d'apprentissage abrupte. Carbon héritera des hautes performances de C et évitera ses principaux inconvénients.

En plus de cela, les créateurs de Carbon affirment que Carbon sera un langage de programmation open-source et totalement interopérable avec C++. Le code Carbon est très similaire au code C++, et dans de nombreux cas, ils sont presque identiques. De plus, le code Carbon peut être intégré au code C++. Ainsi, les développeurs C++ qui souhaitent passer entièrement à Carbon disposeront d'une boîte à outils pour traduire automatiquement les bibliothèques C++ en code dans le nouveau langage. La migration inverse est également possible. À l'avenir, ces bibliothèques pourront être utilisées dans un projet C ++ existant. Tous les outils Carbon sont hébergés sur GitHub et distribués sous la licence Apache 2.0. Jusqu'à présent, il existe un interpréteur de carbone de démonstration disponible.

La structure de gouvernance est un élément important du projet expérimental Carbon. L'équipe Carbon est guidée par les principes d'inclusion et d'ouverture. La structure de gouvernance de Carbon est conçue pour une prise de décision rapide, une flexibilité et un développement rapide du projet. Toutes les décisions cruciales sont prises par les responsables de Carbon, représentés pour l'instant par Chandler Carruth, Kate Gregory et Richard Smith. Le projet Carbon étant basé sur le modèle de développement open-source, chaque utilisateur peut envoyer des requêtes GitHub pour suggérer des changements au projet et faire évoluer le langage Carbon.

Pour l'instant, les employés de Google travaillent sur le langage de programmation Carbon en tant que projet interne. Cependant, il est prévu de réduire le niveau d'implication de l'entreprise dans le projet, car les développeurs comprennent que pour un succès futur, Carbon doit être un projet indépendant et dirigé par la communauté.

Conclusion

Il est important de comprendre que Carbon est un projet expérimental et qu'il est trop tôt pour affirmer sans équivoque que Carbon est un successeur à part entière de C++. Selon la feuille de route de Carbon, le développement des principales constructions du langage devrait être achevé d'ici la fin 2022, et c'est exactement le moment où Carbon 0.1 devrait être publié. Il faudra du temps pour évaluer le succès du projet, mais nous pouvons d'ores et déjà parler des perspectives élevées du langage de programmation Carbon en tant que successeur de C++ sur la base des fonctionnalités et des principes de développement annoncés.
Merci de l'avoir évalué !
Merci pour le commentaire !
auteur
Dmitry Nazarevich DIRECTEUR TECHNIQUE

Table des matières

Notez cet article :

4/5

4.8/5 (45 commentaires)

Contenu connexe

Avez-vous lancé un challenge?

    S’il vous plaît, ajouter les détails du projet, la durée, la pile technologique, IT spécialistes nécessaires et d'autres informations pertinentes
    S’il vous plaît, ajouter les détails du projet, la durée, la pile technologique, IT spécialistes
    nécessaires et d'autres informations pertinentes
    Joindre des documents supplémentaires au besoin
    Charger file

    Vous pouvez joindre jusqu'à 1 fichier de 2MB au total. Fichiers valides : pdf, jpg, jpeg, png

    Nous vous informons que lorsque vous cliquez sur le bouton Envoyer, Innowise traitera vos données personnelles conformément à notre Politique de confidentialité dans le but de vous fournir des informations appropriées.

    Que se passe-t-il ensuite?

    1

    Après avoir reçu et traité votre demande, nous reviendrons vers vous pour détailler les besoins de votre projet et signer un accord de non-divulgation pour assurer la confidentialité des informations.

    2

    Après avoir examiné les exigences, nos analystes et nos développeurs élaborent une proposition de projet avec l'étendue des travaux, le nombre de membre de l'équipe, les délais et les coûts des coûts.

    3

    Nous organisons une réunion avec vous pour discuter de l'offre et parvenir à un accord.

    4

    Nous signons un contrat et commençons à travailler sur votre projet le plus rapidement possible.

    Merci !

    Votre message a été envoyé.
    Nous traiterons votre demande et vous recontacterons dès que possible.

    Merci !

    Votre message a été envoyé. 

    We’ll process your request and contact you back as soon as possible.

    flèche