Activité 01
Cercle de recherche: La bibliothèque de blocs
Chaque groupe crée 3 blocs personnalisés dans Scratch (tracerTriangle, tracerCarré, tracerÉtoile) avec un paramètre "taille". Les groupes partagent ensuite leurs blocs pour créer une composition collective. L'objectif est de construire un dessin complexe en combinant uniquement des blocs créés par d'autres.
Comment une fonction permet-elle de décomposer un problème complexe en sous-problèmes gérables et indépendants ?
Conseil de facilitationPendant 'La bibliothèque de blocs', circulez entre les groupes pour écouter leurs discussions et posez des questions comme : 'Pourquoi avez-vous choisi cette taille comme paramètre ?'
À observerDemandez aux élèves de décrire en une phrase comment ils utiliseraient une fonction pour dessiner un triangle isocèle, en précisant un paramètre possible. Ils doivent aussi écrire une phrase expliquant pourquoi cette fonction serait utile.
AnalyserÉvaluerCréerAutogestionConscience de soi
Générer une leçon complète→· · ·
Activité 02
Penser-Partager-Présenter: Identifier les répétitions
Le professeur projette un programme de 30 lignes contenant des blocs de code identiques répétés à plusieurs endroits. Individuellement, les élèves surlignent les parties qui se répètent. En binôme, ils proposent des noms de fonctions pour chaque bloc identifié et réécrivent le programme simplifié.
Pourquoi la réutilisation de code via des fonctions est-elle une pratique essentielle en programmation ?
Conseil de facilitationLors du 'Think-Pair-Share', insistez pour que les élèves notent d'abord leurs propres observations avant de les partager, afin d'éviter les réponses impulsives.
À observerEn binômes, les élèves échangent deux fonctions qu'ils ont créées. Chaque élève doit tester la fonction de son camarade avec au moins deux jeux de paramètres différents et noter si le résultat est correct. Ils doivent ensuite écrire une suggestion d'amélioration ou de modification.
ComprendreAppliquerAnalyserConscience de soiCompétences relationnelles
Générer une leçon complète→· · ·
Activité 03
Enseignement par les pairs: Mode d'emploi de ma fonction
Chaque élève crée un bloc personnalisé avec paramètres sur Scratch, puis rédige un "mode d'emploi" (nom, ce que fait la fonction, quels paramètres donner). Son partenaire doit utiliser la fonction correctement en se basant uniquement sur le mode d'emploi, sans voir le code interne.
Comment les paramètres d'une fonction permettent-ils de la rendre plus flexible et adaptable à différentes situations ?
Conseil de facilitationPendant le 'Peer Teaching', demandez aux enseignants de jouer le rôle de l'élève : ils doivent reformuler les instructions de la fonction pour vérifier la clarté du mode d'emploi.
À observerPrésentez un court programme Scratch contenant une boucle pour dessiner un carré. Posez la question : 'Comment transformer cette boucle en un bloc personnalisé nommé 'dessinerCarré' ? Quels paramètres faudrait-il ajouter pour pouvoir changer la taille du carré ?' Observez les réponses des élèves pour évaluer leur compréhension.
ComprendreAppliquerAnalyserCréerAutogestionCompétences relationnelles
Générer une leçon complète→· · ·
Activité 04
Galerie marchande: Avant/Après refactorisation
Chaque groupe affiche côte à côte deux versions de son programme : avant (code long avec répétitions) et après (code court avec fonctions). Les visiteurs comptent les lignes économisées et évaluent la lisibilité. Un vote collectif désigne la refactorisation la plus efficace.
Comment une fonction permet-elle de décomposer un problème complexe en sous-problèmes gérables et indépendants ?
Conseil de facilitationLors de la 'Gallery Walk', prévoyez un temps de silence avant les échanges pour que chacun observe attentivement les différences entre les programmes avant de commenter.
À observerDemandez aux élèves de décrire en une phrase comment ils utiliseraient une fonction pour dessiner un triangle isocèle, en précisant un paramètre possible. Ils doivent aussi écrire une phrase expliquant pourquoi cette fonction serait utile.
ComprendreAppliquerAnalyserCréerCompétences relationnellesConscience sociale
Générer une leçon complète→Quelques notes pour enseigner cette unité
Commencez par des exemples concrets et proches des élèves, comme des recettes de cuisine ou des instructions de jeu, pour ancrer l'abstraction des fonctions. Évitez de présenter trop de théorie d'un coup : privilégiez l'expérimentation guidée où les élèves découvrent les principes par eux-mêmes. Utilisez des analogies simples mais précises, comme comparer une fonction à une machine qui prend des ingrédients (paramètres) et produit un résultat, sans se soucier du fonctionnement interne. Enfin, insistez sur l'importance de nommer correctement les fonctions et leurs paramètres, car cela reflète directement leur compréhension du concept.
À la fin de ces activités, les élèves doivent être capables de distinguer clairement la définition d'une fonction de son utilisation, d'intégrer des paramètres pour rendre leurs blocs réutilisables et de structurer un code en sous-parties autonomes. Leur langage doit refléter cette compréhension : ils parlent de 'définir', 'appeler', 'paramétrer' et 'réutiliser' avec aisance.
Attention à ces idées reçues
Pendant 'La bibliothèque de blocs', certains élèves pensent que la simple création d'un bloc suffit à exécuter le code. Ils oublient de l'appeler ensuite dans leur programme principal.
Demandez à chaque groupe de présenter leur bibliothèque de blocs en expliquant quand et comment ils prévoient d'utiliser chaque fonction. Insistez sur la distinction entre 'définir' et 'utiliser' en montrant visuellement le code avant et après l'appel de la fonction.
Lors de 'Think-Pair-Share : Identifier les répétitions', les élèves créent des fonctions séparées pour chaque valeur, comme 'tracerCarré5' et 'tracerCarré10', sans voir l'intérêt des paramètres.
Affichez les programmes de deux groupes côte à côte : l'un avec des fonctions spécifiques pour chaque taille, l'autre avec une fonction paramétrée. Demandez aux élèves de comparer le nombre de blocs et la facilité de modification, puis de justifier leur choix.
Pendant 'Peer Teaching : Mode d'emploi de ma fonction', certains élèves conçoivent des fonctions qui font trop de choses à la fois, rendant leur explication confuse.
Lancez un défi : 'Votre camarade doit pouvoir résumer votre fonction en une phrase simple. Si ce n'est pas possible, simplifiez-la.' Utilisez cela pour introduire la règle du 'Single Responsibility Principle' : une fonction doit faire une seule chose, bien définie.
Méthodes utilisées dans ce dossier