Exemple Dart Hello World

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

  1. Tout programme Dart doit comporter une fonction main() au niveau racine, c’est à partir d’elle que le programme s’exécute
  2. On utilise le mot-clé void pour les fonctions sans valeur de retour
  3. 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)

  1. 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
  2. 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.
XXsiè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)
  1. D’abord, exécuter une seule fois int i = 1
  2. Ensuite, vérifier si la condition i <=12 est vraie
  3. Si vraie, exécuter print(i) et afficher 1
  4. Puis passer à i++, i devient égal à 2
  5. Vérifier à nouveau i<=12 : 2<=12 vaut true, donc afficher 2 avec print(i)
  6. Répéter i++ puis la vérification de condition
  7. …..
  8. 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 :

  1. Vérifier d’abord si la condition vaut true.
  2. Si vraie, exécuter le corps de la boucle.
  3. À la fin du corps, revérifier la condition.
  4. 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 year avec une valeur initiale de 2010.
Phase de vérification de condition
  • Vérifier si year < 2016 est 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 year augmente de 1.
Phase de revérification
  • Vérifier à nouveau la condition year < 2016.
  • Tant que year va de 2010 à 2015, la condition reste vraie.
  • Lorsque year atteint 2016, la condition est fausse et la boucle s’arrête.

Phase finale

  • À la fin de la boucle, la valeur finale de year est 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.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *