Arborescence

Cartes procédurales

Lire le code des autres, dans les deux sens

Écrire un générateur est une chose ; comprendre celui d'un autre en est une autre.

2 hDès 14 ans, prolongement PythonFiche M5

01Objectif

À la fin de cette séquence : Analyser un script de génération existant, en extraire l'intention, et comprendre pourquoi une représentation intermédiaire évite de tout réécrire.

02L'essentiel

Lire du code est une compétence distincte de l'écrire

Devant le script d'un autre, on ne cherche pas la syntaxe mais l'intention : quelles couches, dans quel ordre, avec quelles contraintes. Le reste n'est que la manière de l'exprimer.

Le même effet s'écrit de dix façons

Trois passages peuvent être une boucle, ou une liste écrite à la main. Les positions peuvent être des nombres ou des variables calculées. Un lecteur — humain ou programme — doit reconnaître l'intention derrière ces styles.

La représentation intermédiaire, pivot du va-et-vient

Plutôt que de traduire directement d'un langage à l'autre, on passe par une description neutre : « une rivière au milieu, deux ponts ». De là on peut produire du code, un aperçu, une analyse — et l'inverse : partir d'un code pour retrouver la description.

Faire l'aller-retour est le meilleur test

Si l'on écrit un code depuis une description, qu'on le relit, et qu'on retombe sur la même description, la compréhension est prouvée. C'est un contrôle bien plus solide qu'une lecture à l'œil.

03Le schéma

Description en françaisl'intentionReprésentation neutrele pivotCode du jeuune expression parmi d'autresAperçu et analysela vérificationbase matérielle en bas · usage en haut
Le pivot central permet d'aller dans les deux sens. Sans lui, chaque nouvelle sortie exigerait de tout réécrire depuis le départ.

04À retenir

  • Chercher l'intention, pas la syntaxe, quand on lit le code d'un autre.
  • Un pivot neutre évite de multiplier les traducteurs entre chaque paire de formats.
  • L'aller-retour prouve la compréhension : écrire, relire, retomber sur la même description.

05Exercice

Échangez votre description de carte en cinq règles avec quelqu'un. Chacun rédige le déroulé détaillé de la carte de l'autre, étape par étape. Comparez ensuite avec les règles d'origine : qu'avez-vous ajouté ou perdu en route ?

Indice — Ce qui se perd est presque toujours implicite chez l'auteur — l'ordre des couches, ou une contrainte qu'il jugeait évidente. C'est là que les malentendus naissent, en pédagogie comme en informatique.

06Vérification des acquis

Pourquoi passer par une représentation intermédiaire ?

Pour découpler l'entrée de la sortie. Avec un pivot, ajouter un nouveau format de sortie ne demande qu'un traducteur ; sans pivot, il en faut un pour chaque paire de formats existants.

Comment prouver qu'on a bien compris un script ?

Par l'aller-retour : le relire pour en extraire une description, régénérer un script depuis cette description, et vérifier qu'il produit le même résultat.