À noter que l’outil de validation exécute la procédure dès le démarrage.
Les étapes d’exécution sont ainsi mémorisées à l’avance.
Contrairement à un véritable débogueur, on peut donc reculer dans les étapes d’exécution.
L’outil supporte la modification en temps réel du fichier de données correspondant aux cartes affichées.
Cette fonctionnalité permet de créer des exercices où les étudiant·e·s doivent encoder des données de façon à produire la bonne visualisation.
À noter que l’outil sauvegarde les données dans un fichier .json situé dans le répertoire _storage/models
Visualiser la procédure à l’aide d’une animation aide les étudiant·e·s à trouver certaines erreurs, surtout
qu’on peut comparer l’animation produite pour la solution avec celle produite pour le code étudiant.
L’exemple ci-bas illustre une erreur courante dans le code étudiant.
On voit que la procédure correcte s’arrête dès que le marqueur bleu (l’indice i dans la boucle) dépasse
le marqueur rouge (l’indice aDeplacer identifiant la carte à déplacer).
Dans le code étudiant, cette condition n’as pas été codée correctement et la procédure
s’exécute pour des étapes en trop, ce qui mène à un résultat erroné.
Finalement, l’outil de validation génère un graphe d’objet pour les
données courantes et sauvegarde ce graphe dans le répertoire _storage/graphs
Ces graphes permettent aux
étudiant·e·s de se forger une image mentale de l’organisation des données en
mémoire. En particulier, puisque les graphes sont générés, les étudiant·e·s
peuvent consulter les graphes d’objets correspondant à différentes étapes d’une
procédure.