Les objets et les types dans un enseignement de la programmation s'adressant à des débutants
Abstract
Beaucoup de progressions s'adressant à des débutants, sont basées sur l'hypothèse selon laquelle les premiers traitements peuvent être enseignés indépendamment du type des objets sur lesquels ils portent, et sans que la question de la codification des données se pose. En fait cette hypothèse conduit à ce que, dans les premiers problèmes, les objets sont tous « déjà codifiés » sous la forme d?entités numériques. Dans les problèmes directs, c'est-à-dire avant qu'interviennent les alternatives et l'itération, l'élève a en fait à établir une « formule » algébrique associant des données numériques et à la traduire dans le langage de programmation ; éventuellement, il a à deviner l'outil mathématique adéquat (les congruences, par exemple, dans le problème du « jour où tombe Noël ».
Plus loin dans la progression, on introduit des traitements non triviaux (alternatives en chaînes, itération), sur des entités numériques avec des problèmes tels que sommation, tri d'entiers, factorielle, exponentiation... Ces problèmes imposent des méthodes de conception qui semblent, au moins dans le secondaire, dépasser les capacités d'une bonne partie du public auquel on s'adresse (Hypothèse de récurrence par exemple). En effet, même si l'élève sait effectuer un calcul correct « à la main », à partir de la définition d'un objet mathématique tel que, par exemple, l'exponentiation, cette connaissance ne l'aide en rien à la conception d'un algorithme ; celle-ci suppose une compréhension de la définition mathématique à un niveau supérieur, acquise seulement plus tard et par une partie des élèves seulement.
Plus loin dans la progression, on introduit des traitements non triviaux (alternatives en chaînes, itération), sur des entités numériques avec des problèmes tels que sommation, tri d'entiers, factorielle, exponentiation... Ces problèmes imposent des méthodes de conception qui semblent, au moins dans le secondaire, dépasser les capacités d'une bonne partie du public auquel on s'adresse (Hypothèse de récurrence par exemple). En effet, même si l'élève sait effectuer un calcul correct « à la main », à partir de la définition d'un objet mathématique tel que, par exemple, l'exponentiation, cette connaissance ne l'aide en rien à la conception d'un algorithme ; celle-ci suppose une compréhension de la définition mathématique à un niveau supérieur, acquise seulement plus tard et par une partie des élèves seulement.
Origin : Explicit agreement for this submission