Premiers pas avec le langage D

Installation ou configuration

Le compilateur standard DMD du langage de programmation D peut s’exécuter sur toutes les principales plates-formes. Pour installer DMD, voir ici. Pour installer en ligne de commande, vous pouvez exécuter la commande (trouvé sur le site Web de D) :

curl -fsS https://dlang.org/install.sh | bash -s dmd

Gestionnaires de paquets

Arch Linux

pacman -S dlang

Chocolaté

choco install dmd

Gentoo

layman -f -a dlang

Homebrew OSX

brew install dmd

Debian/Ubuntu

L’installation sur les distributions Debian/Ubuntu nécessite que le [dépôt APT][1] soit ajouté à la liste des sources.

wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list
wget -qO - https://dlang.org/d-keyring.gpg | sudo apt-key add -
apt-get update
apt-get install dmd-bin

[1] : http://d-apt.sourceforge.net/

Autres compilateurs

[LDC][2] est un compilateur D qui utilise l’interface officielle du compilateur DMD et LLVM comme backend.

[GDC][3] est un compilateur D qui utilise le backend GCC pour générer du code.

[2] : https://wiki.dlang.org/LDC [3] : http://gdcproject.org/

IDE

Afin de vous faciliter la vie, vous pouvez également installer un IDE (Integrated Development Environment). Le wiki D-Language contient une liste des IDE et plugins disponibles pour toutes les plateformes ici.

Bonjour le monde

import std.stdio;

// Let's get going!
void main()
{
    writeln("Hello World!");
}

Pour compiler et exécuter, enregistrez ce texte dans un fichier appelé main.d. À partir de la ligne de commande, exécutez dmd main.d pour compiler le programme. Enfin, exécutez ./main pour exécuter le programme dans un shell bash ou vous pouvez cliquer sur l’exécutable sous Windows.

Lire les valeurs d’une chaîne

import std.format;

void main() {
    string s = "Name Surname 18";
    string name, surname;
    int age;
    formattedRead(s, "%s %s %s", &name, &surname, &age);
    // %s selects a format based on the corresponding argument's type
}

La documentation officielle pour les chaînes de format peut être trouvée à : https://dlang.org/phobos/std_format.html#std.format

Bonjour le monde!

Pour créer le programme d’impression classique “Hello, world”, créez un fichier appelé hello.d avec un éditeur de texte contenant le code suivant :

import std.stdio;

void main() {
    writeln("Hello, World!");    //writeln() automatically adds a newline (\n) to the output
}

Explication :

import std.stdio

Cette ligne indique au compilateur que les fonctions définies dans le module de bibliothèque standard std.stdio seront utilisées. N’importe quel module peut être importé, tant que le compilateur sait où les chercher. De nombreuses fonctions sont fournies dans le cadre de la bibliothèque standard massive de D.

void main() {

Cette ligne déclare la fonction main, renvoyant void. Notez que contrairement à C et C++, D permet à main d’être de type void. La fonction main est spéciale car c’est le point d’entrée du programme, c’est-à-dire que c’est là que commence l’exécution du programme. Quelques notes sur les fonctions en général :

  • Le nom d’une fonction peut être tout ce qui commence par une lettre et est composé de lettres, de chiffres et de traits de soulignement.

  • Les paramètres attendus seront une liste séparée par des virgules de noms de variables et leurs types de données.

  • La valeur que la fonction est censée renvoyer peut être n’importe quel type de données existant et doit correspondre au type d’expression utilisé dans l’instruction return de la fonction.

Les accolades { … } sont utilisées par paires pour indiquer où commence et se termine un bloc de code. Ils peuvent être utilisés de nombreuses façons, mais dans ce cas, ils indiquent où la fonction commence et se termine.

writeln("Hello, World!");

writeln est une fonction déclarée dans std.stdio qui écrit ses arguments dans stdout. Dans ce cas, son argument est "Hello, World", qui sera écrit sur la console. Divers caractères de format, similaires à ceux utilisés par printf de C peuvent être utilisés, comme \n, \r, etc.

Chaque instruction doit être terminée par un point-virgule.

Les commentaires sont utilisés pour indiquer quelque chose à la personne qui lit le code et sont traités comme des blancs par le compilateur. Dans le code ci-dessus, voici un commentaire :

//writeln() automatically adds a newline (\n) to the output

Ce sont des morceaux de code qui sont ignorés par le compilateur. Il existe trois manières différentes de commenter en D :

  1. // - Commentez tout le texte dans la même ligne, après le //
  2. /* texte de commentaire */ - Ceux-ci sont utiles pour les commentaires multilignes
  3. /+ texte de commentaire + - Ce sont également des commentaires multilignes

Ils sont très utiles pour transmettre ce qu’une fonction / un morceau de code fait à un collègue développeur.

Compilation et exécution du programme

Pour exécuter ce programme, le code doit d’abord être compilé dans un exécutable. Cela peut être fait à l’aide du compilateur.

Pour compiler à l’aide de DMD, le compilateur D de référence, ouvrez un terminal, accédez à l’emplacement du fichier hello.d que vous avez créé, puis exécutez :

dmd bonjour.d

Si aucune erreur n’est trouvée, le compilateur produira un exécutable nommé d’après votre fichier source. Cela peut maintenant être exécuté en tapant

./bonjour

Lors de l’exécution, le programme affichera “Hello, World!”, suivi d’une nouvelle ligne.