Scratch programmation : définition et fonctionnement simple
Tu ouvres Scratch pour la première fois, et tu vois une scène vide, des lutins colorés et des blocs à emboîter comme des Légos. Pas une seule ligne de code à taper.

Scratch programmation: définition et fonctionnement simple
Si cette interface te paraît presque trop simple, c'est précisément le pari fait par le MIT en 2007: remplacer la syntaxe textuelle par des briques visuelles, pour que tu puisses te concentrer sur la logique de ton programme plutôt que sur la grammaire du langage. Scratch est aujourd'hui intégré aux programmes officiels de mathématiques et de technologie des cycles 3 et 4 — du CM1 à la 3e.
La version 3.0, publiée le 2 janvier 2019 et écrite en HTML5, CSS et JavaScript, fonctionne directement dans ton navigateur, sans installation. Depuis le lancement de Scratch 1.0 le 15 mai 2007 sous la direction de Mitchel Resnick, l'outil a conquis des millions d'élèves dans plus de 70 langues. Comprendre son fonctionnement, c'est poser la première brique de ta culture informatique.
Scratch n'est pas un langage à apprendre par cœur: c'est une manière de structurer un problème avant de le résoudre.
Scratch, c'est quoi exactement? Définition pour le collège
À la question « Scratch, c'est quoi? », la réponse tient en une phrase: c'est un langage de programmation visuel par blocs. Tu n'écris pas d'instructions sous forme de texte, tu assembles des pièces graphiques qui représentent chacune une commande. Chaque brique a une forme spécifique: si elle s'emboîte dans une autre, c'est qu'elle peut être combinée avec elle.
Cette mécanique change tout par rapport à un langage textuel comme Python ou C++. Dans ces langages, un point-virgule oublié, une indentation ratée ou une majuscule mal placée suffit à bloquer ton programme avec un message d'erreur souvent obscur. Avec Scratch, ce type d'erreur disparaît: tu ne peux emboîter que des blocs compatibles. La machine interprète directement ta construction logique.
Concrètement, Scratch est utilisé au collège pour trois familles d'activités:
- Créer des animations en déplaçant des personnages, appelés lutins, sur une scène.
- Simuler des phénomènes: compteurs, conditions, interactions entre personnages.
- Tracer des figures géométriques, notamment avec l'extension Stylo, qui transforme Scratch en logiciel de géométrie dynamique.
Apprendre à coder avec Scratch, c'est donc déjà programmer — mais sans la barrière de la syntaxe.
L'interface Scratch 3.0: les 9 catégories de blocs à connaître
L'éditeur en ligne se découpe en quatre zones: la scène en haut à droite, la palette de blocs à gauche, la zone de code au centre, et la liste des lutins en bas. Tout ton travail se fait en cliquant-glissant les blocs depuis la palette vers la zone de code, puis en les emboîtant les uns sous les autres pour former une pile exécutée de haut en bas.
Les blocs sont regroupés en 9 catégories principales, chacune identifiée par une couleur précise. Les repérer par couleur, c'est gagner du temps sur chaque exercice:
| Couleur | Catégorie | Rôle principal |
|---|---|---|
| Bleu | Mouvement | Déplacer, tourner, aller à des coordonnées |
| Violet | Apparence | Dire, montrer, cacher, changer de costume |
| Rose | Son | Jouer une note, un son enregistré |
| Jaune | Événements | Démarrer le programme (drapeau vert, clic, message reçu) |
| Orange | Contrôle | Boucles, conditions, attente |
| Bleu clair | Capteurs | Détecter un contact, une couleur, une touche pressée |
| Vert | Opérateurs | +, −, ×, ÷, ET, OU, NON, random |
| Orange foncé | Variables | Créer un compteur, stocker une valeur |
| Rouge | Mes blocs | Définir tes propres fonctions |
À ces 9 catégories s'ajoutent des extensions, accessibles via le bouton « Extensions » en bas de la palette. La plus utile en cours de maths est l'extension Stylo, qui ajoute les blocs nécessaires pour tracer des figures. Une erreur classique consiste à croire que les blocs Stylo sont visibles par défaut: ils ne le sont pas, il faut explicitement les ajouter depuis le menu des extensions.
Astuce de brouillon: avant de coder, note sur ton cahier la couleur des trois catégories que tu utilises le plus souvent (« bleu = mouvement, jaune = événement qui démarre, orange = boucle »). Ce réflexe te fait gagner plusieurs minutes à chaque exercice d'évaluation.
Maîtriser la scène: repères cartésiens et coordonnées (x, y)
La scène de Scratch est une zone rectangulaire de 480 pixels de largeur sur 360 pixels de hauteur. Elle est structurée par un repère cartésien dont l'origine (0, 0) se situe au centre. Autrement dit, ce n'est pas le coin haut-gauche qui sert de référence comme sur un tableur: le milieu de la scène est l'origine.
Les coordonnées s'étendent ainsi:
- L'axe horizontal (x) va de −240 (à gauche) à +240 (à droite).
- L'axe vertical (y) va de −180 (en bas) à +180 (en haut).
Les quatre coins de la scène ont donc pour coordonnées: haut-gauche (−240, 180), haut-droite (240, 180), bas-droite (240, −180) et bas-gauche (−240, −180).
C'est exactement la même logique que sur une feuille de papier millimétré, sauf que les valeurs sont exprimées en pixels et non en centimètres. Cette correspondance directe entre Scratch et le repère cartésien vu en cours de maths est un atout considérable: tu peux simuler sur Scratch les figures que tu traces en classe, et inversement retrouver sur papier la position d'un lutin dont tu connais les coordonnées.
Pour vérifier la position d'un lutin, place ta souris dessus sur la scène: ses coordonnées s'affichent en bas à droite. Si ton lutin ne se trouve pas là où tu le crois, ton programme ne fait pas ce que tu imagines — c'est souvent la première cause d'erreur sur les exercices de déplacement.
Le repère de Scratch est centré, pas ancré en haut à gauche: cette précision sauve des points à l'évaluation.
Tracer des figures avec l'extension Stylo: la géométrie au programme
L'extension Stylo transforme Scratch en logiciel de géométrie dynamique. Une fois l'extension ajoutée, tu disposes de blocs comme « stylo en position d'écriture », « relever le stylo », « effacer tout » et « ajouter 1 à la taille du stylo ». Combine-les avec les blocs Mouvement et Contrôle, et tu peux tracer n'importe quelle figure composée de segments, exactement comme avec un compas et une règle.
Pour tracer un polygone régulier à n côtés (carré, triangle équilatéral, pentagone, hexagone), la formule à connaître est:
Angle de rotation = 360° ÷ n
C'est l'angle extérieur au polygone, pas l'angle intérieur. Une erreur fréquente consiste à utiliser 180° − (360°/n), ce qui correspond à l'angle interne mais donne une figure inversée ou mal fermée. Pour un carré (n = 4), tu tournes donc de 90°. Pour un triangle équilatéral (n = 3), tu tournes de 120°. Pour un hexagone (n = 6), tu tournes de 60°.
Le squelette minimal d'un programme pour tracer un carré de côté 100 pixels s'écrit ainsi, en pseudo-code Scratch:
- Quand le drapeau vert est cliqué: effacer tout, puis mettre le stylo en position d'écriture.
- Répéter 4 fois: avancer de 100, puis tourner de 90 degrés.
Sur ton brouillon, commence toujours par faire un schéma à main levée avec les angles notés: tu verras immédiatement si tu dois tourner vers la gauche ou vers la droite. Si tu dois tourner dans l'autre sens, ajoute un signe négatif à l'angle. Cette vérification visuelle rattrape la majorité des erreurs d'orientation avant même que ton lutin n'ait bougé.
En traçant un polygone régulier dans Scratch, tu dois prouver que tu connais la formule 360°/n — c'est souvent la moitié des points de l'exercice.
Pourquoi Scratch change la façon d'apprendre à coder
L'avantage pédagogique de Scratch ne se limite pas à supprimer les fautes de syntaxe. Il déplace l'effort cognitif vers ce qui compte réellement en algorithmique: la décomposition d'un problème en étapes, l'identification des boucles, la formulation des conditions.
Un programme Scratch complet mobilise, sans que tu t'en rendes compte, les mêmes concepts qu'un programme Python ou Java:
- Les variables (catégorie orange foncé) équivalent à des conteneurs d'information réutilisables.
- Les boucles « répéter X fois » et « répéter indéfiniment » structurent les traitements répétitifs.
- Les conditions « si… alors… sinon » introduisent la logique booléenne.
- Les capteurs (touche pressée, contact avec un autre lutin) gèrent les événements asynchrones.
Quand tu passes ensuite à un langage textuel, tu n'apprends pas une nouvelle manière de penser: tu apprends seulement une nouvelle manière d'écrire ce que tu sais déjà structurer. Cette continuité est précieuse: tu ne repars pas de zéro, tu changes seulement d'outil d'écriture.
Trois réflexes à installer dès la première séance
Pour terminer, trois réflexes qui font la différence entre un élève qui bricole et un élève qui progresse vite:
1. Avant de glisser le moindre bloc, écris en français l'enchaînement des actions (« je veux que mon lutin avance, tourne, répète 4 fois »). Cette reformulation en langage naturel est la moitié de ton code: si tu n'arrives pas à la formuler, ton programme ne tournera pas.
2. Teste ton programme après chaque ajout de bloc, pas à la fin. Si tu attends d'avoir empilé 30 blocs pour lancer, tu ne sauras jamais lequel pose problème. La progression par petits tests est la seule méthode qui te fait gagner du temps sur la durée.
3. Utilise des noms de variables explicites (« score », « vitesse », « côté ») plutôt que des lettres seules. Cette habitude te suivra en Python, en JavaScript et dans tous les langages que tu rencontreras au lycée puis après.
Scratch est un tremplin, pas un jouet. Les concepts que tu y pratiques — boucle, condition, variable, événement — sont les mêmes que ceux que tu retrouveras dans tous les langages professionnels. Maîtrise-les ici, et la suite se passera simplement.