← Niveau 4 – Data pro

Leçon 1 sur 6 ⏱ 20 minutes Aperçu gratuit

Pourquoi les données disparaissent au redémarrage

Découvre pourquoi le livre d'or oublie les messages quand le serveur s'arrête – et ce qu'on va faire.

Ce qui se passe sous le capot

Au Niveau 3, on stockait les messages dans un tableau en mémoire :

const vzkazy = [
  { jmeno: "Martin", text: "First message!" },
];

Ça marche super – tant que le serveur tourne. Mais quand tu l’arrêtes (Ctrl+C) et le redémarres, le tableau est vide. Les messages ont disparu. Pourquoi ?

Parce que la RAM (la mémoire de l’ordinateur) est comme un tableau blanc en classe : quand tu pars, quelqu’un l’efface. Pour un stockage permanent, il te faut un disque – un fichier ou une base de données.

💡

Disque vs. mémoire : un fichier sur disque survit à un redémarrage. Un tableau dans server.js non. C’est pour ça que les grands sites web utilisent des bases de données – MySQL, PostgreSQL, SQLite. On commencera avec SQLite : une base de données dans un seul fichier, sans serveur supplémentaire.

Montre-moi : ce qui se passe après un redémarrage

  1. Démarre le serveur de la leçon livre d’or (node server.js).
  2. Envoie un nouveau message via React.
  3. Arrête le serveur (Ctrl+C) et redémarre-le.
  4. Actualise la page dans ton navigateur – le message a disparu.

Ce n’est pas un bug dans le code. C’est une propriété de la mémoire. Et maintenant tu sais pourquoi les bases de données existent.

À toi 💪

  1. Répète l’expérience ci-dessus et note (peut-être dans des notes de ton projet) exactement ce qui s’est passé.
  2. Ouvre server.js et trouve la ligne avec const vzkazy = [...]. Ajoute un commentaire : // WARNING: this disappears after a server restart!
  3. Réfléchis à ton propre projet : qu’est-ce qui ne devrait pas disparaître sur ton site d’école/club/journal ? (emploi du temps ? photos ? messages ?) – liste 2–3 choses.

Vérifie : Tu comprends la différence entre mémoire (temporaire) et disque (permanent). Dans la prochaine leçon tu apprendras Git – pour sauvegarder le code sur disque et en ligne. Puis SQLite – pour stocker les messages pour toujours.

Ce que tu retiens de cette leçon