Après le langage C et C++, voici le langage D
Après 30 années d'utilisation intensive de C et de C++, son successeur le langage D commence à faire son apparition. Pour l'histoire, le langage C a évolué du langage B qui lui-même évoluait du langage A.
Vous trouverez le site de référence à l'adresse http://www.digitalmars.com/d/. Le langage hérite pour beaucoup du langage C/C++/Java et C# !
Alors maintenant passons aux choses sérieuses ! Que nous apporte ce nouveau langage ??? Tout d'abord la syntaxe est similaire à tous les langages héritant du C et sur laquelle je ne vais pas m'attarder. Naturellement vous aurez la possibilité de créer des classes, des interfaces, des énumérations, des structures, des templates, ... rien de bien nouveau en quelque sorte mais les indispensables sont là ! Tout d'abord le langage D est très proche du C++ néanmoins il apporte les 2 grosses nouveautés suivantes (les plus grosses uniquement !) :
- Le concept de package à la 'Java' est respecté et porte le nom de module. Pourquoi je dis à la Java ? Tout simplement parce que ce n'est pas uniquement un namespace, les packages correspondent à leur nom de répertoire dans le chemin des sources tout comme dans Java.
- Gestion de la mémoire entièrement automatisée avec un garbage collector.
Pour vous donner une meilleure idée du langage D apr rapport aux autres langages, voici le comparatif des possibilités du langage D par rapport au C/C++/C#/Java : http://www.digitalmars.com/d/comparison.html
Vous pourrez convertir vos programmes C/C++ vers D sans trop de soucis grâce aux différents guides disponibles sur le site. Egalement vous pourrez vous amuser à faire vos premiers programmes en D à l'aide des compilateurs disponibles sur le site (dont un frontend pour GCC appelé GDC ;-) ). Vous aurez aussi à votre disposition une librairie contenant les principales classes de base (string, ...)
Voici un comparatif de la rapidité des langages (sur lequel je suis très sceptique pour tout un tas de raisons ...) ici.
Donc pas de grandes révolutions mais un langage évolué qui semble être un bon remplaçant au C++. D'ailleurs PostgreSQL, l'un des meilleurs SGBD Libre (à mon goût) va sûrement effectuer la transition du C vers le D à 100% du code existant, on verra bien le résultat !
Dans 30 ans peut-être qu'il y aura un langage E et je ferai un blog dessus évidemment ! :p Mais avant il y aura surement un post sur les features du C Omega ... ;-)
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :