Emploi Start-up Evénements 01 Avis d'expert Vidéos Indicateurs Distribution Telecharger Pro Livres blancs

Le langage D rénove la programmation systèmes

Conçu pour être une extension du vénérable C, le langage D apporte un éventail de fonctions visant à la simplification et à l’efficacité. La version 1.0 de l’implémentation de référence est désormais accessible.
envoyer
par mail
imprimer
l'article
partager sur Viadeo
partager sur Facebook
partager sur LinkedIn
partager sur Scoopeo
partager sur Technorati
partager sur Digg
partager sur Delicious
partager sur Google
partager sur Myspace
partager sur Yahoo!

Sa définition a débuté en 1999. Il se veut le successeur de toute une classe de langages (C++, Java, C#) qui se sont inspirés au fil du temps du C, le langage de programmation systèmes de référence depuis trente-cinq ans. Le langage D vise les applications systèmes, de grande taille, exigeant performances, déterminisme et fiabilité. Pour minimiser le temps d’apprentissage, sa syntaxe apparaît volontairement familière aux habitués du C/C++.

Une part importante des lignes directrices du D est en fait constituée des bonnes pratiques de programmation incorporées au sein du langage. Tout est fait pour simplifier l’écriture, la mise au point et les tests des programmes.

Des simplifications sans compromis

La programmation par contrats, à l’exemple du langage Eiffel de Bertrand Meyer, fait ainsi partie intégrante des outils du développeur. En pratique, il est question de rapprocher les spécifications du code, de manière à pouvoir contrôler les éventuelles dérives des unes par rapport à l’autre. Ce principe de programmation aide également à vérifier la validité du code à l’exécution, voire au moment de la compilation, généralisant ainsi la pratique des tests unitaires.

“ Il fallait concevoir un langage aussi performant à l’exécution que C/C++ [pas de machine virtuelle, NDLR], tout en réduisant autant que possible les temps de compilation ”, dit Walter Bright, l’initiateur du projet et dirigeant de l’éditeur Digital Mars. Selon lui, tout ce que fait D peut être réalisé en C++, d’une manière ou d’une autre, en utilisant des macros ou des templates. Mais l’accès à ces moyens est simplifié dans D et son code s’avère beaucoup plus clair et maintenable.

Certaines fonctions classiques du C/C++ sont par ailleurs abandonnées, comme les inclusions classiques du C – qui obligent potentiellement l’analyseur à traiter plusieurs fois les mêmes fichiers – ou le préprocesseur, ce traitement étant réalisé au sein du langage lui-même. En matière d’objets, D n’accepte pas l’héritage multiple, et les programmes ne peuvent être liés au modèle objet C++, jugé bien trop complexe par le concepteur. Néanmoins, de nombreuses fonctions utiles sont présentes. Ainsi le ramasse-miettes évite-t-il une gestion complexe de la mémoire, source conséquente d’erreurs.

De même, D supporte les célèbres pointeurs du C, aussi puissants qu’ils sont dangereux, et propose des voies alternatives qui aident à s’en affranchir dans la plupart des cas. La simplification du traitement des tableaux par rapport à C est aussi une avancée majeure. Alors que C traite séparément les données du tableau et ses informations de dimension, D propose, lui, une syntaxe claire, notamment pour le traitement des chaînes de caractères. Enfin, le langage s’appuie sur une communauté vivace, que ses qualités ne peuvent que renforcer.

Une compilation des fonctions de ses aînés

agrandir la photo

 

Le langage D concentre de manière élégante de nombreuses fonctions accessibles partiellement dans les autres langages.

Source : Digital Mars

Pour en savoir plus

Le langage D est édité par Digital Mars.
Le frontal de compilation est disponible sous une double licence GPL ou Artistic.
Le “ back end ” est commercialisé par l’éditeur.
Le site de l’éditeur : www.digitalmars.com
La page du projet de frontal D sur Sourceforge : http://dgcc.sourceforge.net/

publicité
à lire aussi
SUR LES MÊMES THÈMES
Créer des extensions Firefox devient plus simple
Microsoft fournit gratuitement sa méthode de développement sécurisé
Une API pour Google Analytics
OS mobile cherche développeurs
48 500 euros (ht) pour une plate-forme de réservation de taxis
Flash bien plus répandu que Silverlight selon riastats.com
Un standard Eclipse pour créer des applications mobiles
Mozilla signe un IDE hébergé
Les machines multicœurs : un casse-tête pour les développeurs
Google invite les développeurs à créer des vidéos
Mozilla expérimente un éditeur de code en ligne gratuit et open source
JavaFX arrive sur les téléphones mobiles
IBM disponible sur la plate-forme en ligne Amazon EC2
Pour les informaticiens, le cloud computing reste encore vaporeux
Regain d'intérêt pour le langage C
Adenclassifieds refond avec agilité Keljob.com
La qualité : une question de survie
Ruby on Rails et Merb fusionnent
Adobe propose LiveCycle ES sur la plate-forme d'Amazon
La boîte à outils PHP d'Eclipse passe en v2
01Informatique
01 INFORMATIQUE
L'hebdo de référence des décideurs informatiques.
Micro Hebdo
MICRO HEBDO
L'hebdo qui vous simplifie la micro
et Internet.
L'Ordinateur Individuel
L'ORDINATEUR INDIVIDUEL
Le mensuel informatique qui vous informe et vous conseille.
Tous droits réservés © 1999 - 2009 Internext - 01net.