Exercice : "Hello, Recipe!"

Objectif : Créer un script Node.js simple qui affiche des informations sur une recette de cuisine et comprendre le cycle de vie de ce script.

Partie 1: Création du script

  1. Initialisation du projet :

    • Créez un nouveau dossier nommé hello_recipe.
    • Ouvrez un terminal et naviguez (cd) dans ce dossier.
    • Exécutez npm init -y pour initialiser un nouveau projet Node.js avec un fichier package.json par défaut.
  2. Création du script :

    • Dans le dossier hello_recipe, créez un fichier nommé index.js.
    • Ouvrez ce fichier dans votre éditeur de texte ou IDE préféré.
  3. Écriture du code :

    • Dans index.js, ajoutez le code suivant :
      console.log("Bienvenue dans notre application de recettes!");
      
      const recipe = {
        title: "Spaghetti Carbonara",
        ingredients: ["pâtes", "lardons", "œufs", "parmesan", "poivre noir"],
        steps: [
          "Faites cuire les pâtes.",
          "Faites revenir les lardons.",
          "Mélangez les œufs et le parmesan et ajoutez-les aux pâtes.",
          "Ajoutez les lardons et assaisonnez avec du poivre noir."
        ]
      };
      
      console.log(`Recette du jour: ${recipe.title}`);
      console.log("Ingrédients nécessaires:", recipe.ingredients.join(", "));
      console.log("Étapes de préparation:");
      recipe.steps.forEach((step, index) => {
        console.log(`${index + 1}. ${step}`);
      });
      

Partie 2: Exécution du script

  1. Exécution du script :
    • Retournez dans votre terminal.
    • Assurez-vous que vous êtes toujours dans le dossier hello_recipe.
    • Exécutez le script en tapant node index.js.
    • Observez la sortie dans le terminal.

Partie 3: Comprendre le cycle de vie

  1. Analyse du cycle de vie :

    • Notez que Node.js exécute le script de haut en bas.
    • Après avoir affiché toutes les informations, Node.js quitte le processus car il n'y a plus de travail à faire (pas de callbacks en attente, pas de serveur écoutant sur un port, etc.).
  2. Questions de réflexion : (Vous pouvez soit y répondre vous-même, soit les utiliser comme une partie de l'exercice pour les étudiants.)

    • Qu'arriverait-il si nous ajoutions un setTimeout avec un callback à la fin du script ?
    • Comment le cycle de vie du script serait-il affecté si nous commencions à écouter sur un port avec un serveur HTTP ?

Partie 4: Défi supplémentaire (Optionnel)

  1. Ajout d'interactivité :
    • Modifiez le script pour accepter l'entrée de l'utilisateur via la ligne de commande pour ajouter un nouvel ingrédient à la liste.
    • Utilisez le module readline pour obtenir l'entrée de l'utilisateur.
    • Affichez la nouvelle liste d'ingrédients après l'ajout.

Cet exercice permet aux débutants de se familiariser avec les concepts de base de Node.js, y compris l'interaction avec le système de fichiers, la gestion des modules et le cycle de vie d'un script Node.js.

Modifié le: vendredi 3 novembre 2023, 07:29