Lors du cours précédent, nous avons vu comment créer notre premier exemple Dart. Maintenant, nous allons apprendre à créer nous-mêmes un exemple Hello World.
1 Hello World
- Tout programme Dart doit comporter une fonction
main()au niveau racine, c’est à partir d’elle que le programme s’exécute - On utilise le mot-clé
voidpour les fonctions sans valeur de retour print()permet d’afficher du texte dans la console
// Point d'entrée du programme
void main() {
print('Hello, World!');
}
Langage du code : Dart (dart)
Nous reprenons le projet créé au cours précédent. Ouvrez le fichier firstdart.dart dans le dossier C:\dartdemo\firstdart\bin
Remplacez tout le code du fichier par celui ci-dessus

Ouvrez ensuite l’invite de commande cmd, allez dans le répertoire C:\dartdemo\firstdart et exécutez la commande dart run
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
Hello, World!Langage du code : CSS (css)
2 Variables (var : inférence automatique du type)
- Lorsque vous définissez une variable avec
var, Dart déduit automatiquement son type selon la valeur affectée, sans avoir à écrire manuellement le nom du type - Il gère les chaînes de caractères, les entiers, les nombres à virgule, les tableaux et les dictionnaires (objets)
Exemple
// Point d'entrée du programme
void main() {
var name = 'Voyager 1'; // Chaîne String
var year = 1977; // Entier int
var width = 3.7; // Nombre à virgule double
var planets = ['Jupiter','Saturne']; // Tableau List
var info = {
'tag': ['Saturne'],
'url': 'Adresse de l’image'
}; // Dictionnaire Map
}
Langage du code : Dart (dart)
Nous avons défini plusieurs variables ci-dessus. Une variable est une petite zone de mémoire destinée à stocker des données, à laquelle vous donnez un nom. Grâce à ce nom, vous pouvez facilement manipuler cette zone mémoire.
Théoriquement, cette zone mémoire peut stocker n’importe quelle suite de 0 et de 1, car toutes les données informatiques sont composées de 0 et de 1. Les types (chaîne, entier, etc.) existent pour faciliter l’interprétation des données : si le compilateur identifie un type int, il lira les données sous forme d’entier.
Si vous souhaitez manipuler les variables définies ci-dessus
// Point d'entrée du programme
void main() {
var name = 'Voyager 1'; // Chaîne String
var year = 1977; // Entier int
var width = 3.7; // Nombre à virgule double
var planets = ['Jupiter', 'Saturne']; // Tableau List
var info = {
'tag': ['Saturne'],
'url': 'Adresse de l’image'
}; // Dictionnaire Map
// Exemple d’utilisation de chaîne
print('Nom de la sonde : $name');
print('Longueur du nom : ${name.length}');
print('Contient le chiffre "1" ? : ${name.contains('1')}');
// Exemple d’utilisation d’entier
print('Année de lancement : $year');
print('Années écoulées : ${DateTime.now().year - year} ans');
// Exemple d’utilisation de nombre à virgule
print('Largeur de la sonde : $width mètres');
print('Carré de la largeur : ${width * width}');
// Exemple d’utilisation de tableau
print('Liste des planètes cibles : $planets');
planets.add('Uranus'); // Ajouter un élément
print('Liste des planètes mise à jour : $planets');
print('Première cible : ${planets[0]}');
// Exemple d’utilisation de dictionnaire
print('Étiquettes d’information : ${info['tag']}');
print('Adresse de l’image : ${info['url']}');
info['status'] = 'En fonctionnement'; // Ajouter une nouvelle paire clé-valeur
print('Informations complètes : $info');
}
Langage du code : PHP (php)
Nous utilisons ici l’affichage formaté, un sujet que nous n’avons pas encore vu. Vous pouvez simplement en comprendre le principe pour l’instant, nous l’étudierons plus tard.
3 Instructions de contrôle de flux (conditions / boucles)
Condition if else
On exécute des blocs de code différents selon la condition écrite entre parenthèses après if. Si la condition vaut true (vraie), le code entre accolades après if s’exécute ; sinon, c’est le code du bloc else qui s’exécute.

if (condition) {
// Exécuté si la condition est true
} else {
// Exécuté si la condition est false
}Langage du code : JavaScript (javascript)
Exemple : vérifier si on dépasse la vitesse autorisée
var speed = 25;
if (speed > 60) {
print('Vous dépassez la vitesse limite !');
} else {
print('Vitesse correcte.');
}Langage du code : PHP (php)
On peut aussi enchaîner plusieurs vérifications
if (speed > 100) {
print('Vitesse dangereuse !');
} else if (speed > 60) {
print('Vous roulez un peu vite.');
} else {
print('Conduite sûre.');
}Langage du code : PHP (php)
void main() {
var year = 1977;
if (year >= 2001) {
print('XXIᵉ siècle');
} else if (year >= 1901) {
print('XXᵉ siècle');
}
}
Langage du code : Dart (dart)
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
XXᵉ siècleLangage du code : CSS (css)
Parcourir un tableau avec for-in
En Dart, la boucle for‑in est une syntaxe concise pour parcourir des objets itérables comme List ou Set.
Elle vérifie s’il existe un élément suivant dans le tableau ou la liste : si oui, exécute le code entre accolades ; sinon, elle termine la boucle et passe au reste du programme.
Syntaxe :
for (var item in collection) {
// Utiliser la variable item
}Langage du code : JavaScript (javascript)

Exemple
void main() {
var planets = ['Jupiter','Saturne'];
for (final item in planets) {
print(item);
}
}
Langage du code : Dart (dart)
Résultat de l’exécution
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
Jupiter
SaturneLangage du code : CSS (css)
Boucle for numérique classique
On commence à i=1 et on va jusqu’à 12 inclus grâce à l’opérateur <=. Après chaque print, on passe à l’instruction i++.
void main() {
for (int i = 1; i <= 12; i++) {
print(i);
}
}Langage du code : JavaScript (javascript)

Résultat de l’exécution
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
1
2
3
4
5
6
7
8
9
10
11
12Langage du code : CSS (css)
- D’abord, exécuter une seule fois int i = 1
- Ensuite, vérifier si la condition i <=12 est vraie
- Si vraie, exécuter print(i) et afficher 1
- Puis passer à i++, i devient égal à 2
- Vérifier à nouveau i<=12 : 2<=12 vaut true, donc afficher 2 avec print(i)
- Répéter i++ puis la vérification de condition
- …..
- Lorsque i vaut 13, la condition i<=12 devient fausse, on sort de la boucle for et on poursuit le reste du code
L’instruction int i=1; ne s’exécute qu’une seule fois au début, plus jamais ensuite. Son seul rôle est d’initialiser la variable i, on peut donc écrire aussi :
void main() {
int i = 1;
for (; i <= 12; i++) {
print(i);
}
}
Langage du code : Dart (dart)
4. Boucle while
La boucle while est similaire à la boucle for. En Dart, la boucle while répète un bloc de code tant que la condition est vraie. Sa syntaxe est très simple :
while (condition) {
// Corps de la boucle
}Langage du code : JavaScript (javascript)
Fonctionnement de l’exécution :
- Vérifier d’abord si la condition vaut
true. - Si vraie, exécuter le corps de la boucle.
- À la fin du corps, revérifier la condition.
- Lorsque la condition devient
false, la boucle s’arrête.
Pour que la condition devienne fausse, vous devez modifier une variable dans le corps de la boucle. Si vous ne la modifiez pas, vous risquez une boucle infinie qui ne s’arrête jamais.
var year = 2010;
while(year < 2016){
year += 1;
}
Langage du code : JavaScript (javascript)
On peut décomposer les étapes d’exécution comme suit 👇
Phase d’initialisation
- Définir la variable
yearavec une valeur initiale de2010.
Phase de vérification de condition
- Vérifier si
year < 2016est vraie. - Si vraie, entrer dans le corps de la boucle ; si fausse, sortir de la boucle.
Phase d’exécution du corps de boucle
- Exécuter
year += 1, équivalent àyear = year + 1. - À chaque tour de boucle, la valeur de
yearaugmente de 1.
Phase de revérification
- Vérifier à nouveau la condition
year < 2016. - Tant que
yearva de 2010 à 2015, la condition reste vraie. - Lorsque
yearatteint 2016, la condition est fausse et la boucle s’arrête.
Phase finale
- À la fin de la boucle, la valeur finale de
yearest 2016.
Cette boucle s’exécute au total 6 fois (de 2010 à 2015), en augmentant year de 1 à chaque fois jusqu’à ce que la condition ne soit plus valide. Attention : si vous ne modifiez pas la variable year dans le corps de la boucle, vous obtiendrez une boucle infinie.