Cours gratuits » Cours informatique » Cours programmation » Cours langage D

Cours langage D


Le langage de programmation D est un langage de programmation système orienté objet, impératif et multi-paradigme créé par Walter Bright de Digital Mars et sorti en 2001. Bright a été rejoint dans l'effort de conception et de développement en 2007 par Andrei Alexandrescu. Bien que ce soit une ré-ingénierie de C ++, D est un langage distinct, ayant repensé certaines fonctionnalités C ++ tout en s'inspirant d'autres langages, notamment Java, Python, Ruby, C # et Eiffel.

Les objectifs de conception de D tentent de combiner la performance et la sécurité des langages compilés avec la puissance expressive des langages dynamiques modernes. Le code idiomatique D est généralement aussi rapide que le code C ++ équivalent, tout en étant plus court et sûr pour la mémoire.

L'inférence de type, la gestion automatique de la mémoire et le sucre syntaxique pour les types courants permettent un développement plus rapide, tandis que la vérification des limites, la conception par contrat et un système de type concomitant aident à réduire l'occurrence des bogues.

Caractéristiques du langage D

D est conçu avec des leçons tirées de l'utilisation pratique de C ++ plutôt que d'une perspective purement théorique. Bien qu'il utilise de nombreux concepts C et C ++, il en ignore certains et n'est pas compatible avec le code source C et C ++. D a cependant été contraint dans sa conception par la règle selon laquelle tout code qui est légal dans C et D devrait se comporter de la même manière. D a acquis certaines fonctionnalités avant C ++, par exemple des fermetures, des fonctions anonymes et l'exécution de fonctions de compilation. D ajoute à la fonctionnalité de C ++ en implémentant également la conception par contrat, tests unitaires, modules réels, garbage collection, tableaux de première classe, tableaux associatifs, tableaux dynamiques, découpage de tableaux, fonctions imbriquées, évaluation paresseuse et syntaxe de template repensée. D conserve la capacité de C ++ à effectuer un codage de bas niveau et à ajouter un assembleur en ligne. L'héritage multiple C ++ est remplacé par l'héritage unique Java avec les interfaces et les mixins. D'un autre côté, la syntaxe de déclaration, de déclaration et d'expression de D correspond étroitement à celle de C ++.

L'assembleur en ligne caractérise les différences entre D et les langages d'application tels que Java et C #. Un assembleur en ligne permet aux programmeurs d'entrer du code d'assemblage spécifique à la machine dans le code D standard, une méthode souvent utilisée par les programmeurs pour accéder aux fonctionnalités de bas niveau du processeur nécessaire pour exécuter des programmes directement liés au matériel sous-jacent. pilotes de périphérique.

D a un support intégré pour les commentaires de documentation, permettant la génération automatique de documentation. D prend en charge cinq principaux paradigmes de programmation: impératif, orienté objet, métaprogrammation, fonctionnel et concurrent.

Histoire du langage D

Walter Bright a décidé de commencer à travailler sur une nouvelle langue en 1999. D a été publié en décembre 2001 et a atteint la version 1.0 en janvier 2007. La première version du langage (D1) s'est concentrée sur les paradigmes impératifs, orientés objet et métaprogrammation, similaires en C ++.

Insatisfaits de Phobos, de l'exécution officielle de D et de la bibliothèque standard, les membres de la communauté D ont créé une bibliothèque alternative et une bibliothèque standard appelée Tango. La première annonce publique de Tango est arrivée quelques jours après la sortie de D 1.0. Tango a adopté un style de programmation différent, englobant OOP et haute modularité. Étant un projet mené par la communauté, Tango était plus ouvert aux contributions, ce qui lui permettait de progresser plus vite que la bibliothèque standard officielle. À l'époque, Tango et Phobos étaient incompatibles en raison de différentes API de support d'exécution (le garbage collector, le support de threading, etc.). Cela a rendu impossible l'utilisation des deux bibliothèques dans le même projet. L'existence de deux bibliothèques, toutes deux largement utilisées, a conduit à des conflits importants dus à certains paquets utilisant Phobos et d'autres utilisant Tango.

En juin 2007, la première version de D2 a été publiée. Le début du développement de D2 a signalé la stabilisation de D1; la première version de la langue a été placée en maintenance, ne recevant que des corrections et des correctifs de mise en œuvre. D2 devait introduire des changements de rupture dans la langue, en commençant par son premier système expérimental const. D2 a ensuite ajouté de nombreuses autres caractéristiques du langage, telles que les fermetures, la pureté et la prise en charge des paradigmes de programmation fonctionnelle et concurrente. D2 a également résolu les problèmes de bibliothèque standard en séparant l'exécution de la bibliothèque standard. L'achèvement d'un port D2 Tango a été annoncé en février 2012.

La publication du livre The D Programming Language d'Andrei Alexandrescu le 12 juin 2010 a marqué la stabilisation de D2, que l'on appelle communément aujourd'hui «D».

En janvier 2011, le développement de D est passé d'une base de bugtracker / patch-submission à GitHub. Cela a conduit à une augmentation significative des contributions au compilateur, à l'exécution et à la bibliothèque standard.

En décembre 2011, Andrei Alexandrescu a annoncé que D1, la première version du langage, serait supprimée le 31 décembre 2012. La version finale du D1, D v1.076, était le 31 décembre 2012.

Code pour le compilateur D officiel, le compilateur Digital Mars D de Walter Bright, a été initialement publié sous une licence personnalisée, qualifiant de source disponible mais non conforme à la définition open source. En 2014, le frontal du compilateur a été reclassé sous licence Open Source sous la licence logicielle Boost. Ce code sous licence excluait le back-end, qui avait été partiellement développé chez Symantec. Le 7 avril 2017, l'ensemble du compilateur a été mis à disposition sous la licence Boost après que Symantec ait donné l'autorisation de reclasser le back-end. Le 21 juin 2017, le langage D a été accepté pour inclusion dans GCC.

Cours et exercices langage D - Formation langage D en PDF - Livres et Ebook  programmation D