C3.2 Lire et modifier des codes donnés comprenant l’analyse de données afin de prendre des décisions éclairées et de les communiquer, et décrire l’incidence de ces changements sur les résultats et l’efficacité.
Habileté : lire un code
La lecture du code consiste à interpréter les blocs ou les commandes afin d’en déduire le sens du code. Cela permet à l’élève de faire des prédictions en lien avec le comportement du code. La lecture du code est aussi une partie importante du débogage, soit l’identification et la correction d’erreurs dans le code, car en lisant le code il est possible pour l’élève d’identifier la ou les raisons pour lesquelles celui-ci ne fonctionne pas. À noter ici que cette habileté ne correspond pas à la lecture du code par l’ordinateur, mais plutôt la lecture du code par l’élève pour en faire la vérification.
Habileté : modifier un code
La culture de la programmation informatique en est une de partage, et plusieurs logiciels sont créés en se basant sur du code existant. La modification d’un code permet d’abord à l’élève de partir d’une séquence de code existante et fonctionnelle afin de bâtir quelque chose de nouveau. La modification d’un code peut aussi avoir comme but de le simplifier, ou de démontrer qu’il y a plus d’une façon de représenter une même situation avec du code. On pourrait aussi ici parler d’efficacité qui, dans le contexte du codage, signifie l’utilisation d’un minimum de blocs ou de commandes pour atteindre l’objectif désiré. Le cas échéant, l’élève peut aussi modifier du code erroné afin de le rendre fonctionnel, un processus nommé débogage.
Par exemple, il existe parfois différents outils de codage qui permettront de plus efficacement effectuer un travail que d’autres. Modifier du code pour que celui-ci soit utile dans un logiciel différent ou dans une langue différente peut, à la longue, être plus efficient.
Le calcul de la moyenne pour une série de données dans un logiciel de codage par blocs pourrait ressembler à ceci :
Bloc de contrôle : répéter jusqu’à ce que « réponse » égal « N ». Bloc de capteur : demander « quelle est la valeur de la donnée ? » et attendre. Bloc de variable de ma liste : ajouter « réponse » à « liste de données ». Bloc de variable : ajouter « réponse » à « somme ». Bloc de capteur : demander « as-tu d’autres données à ajouter « O » barre oblique « N » » et attendre. Répéter. Bloc de variable : mettre « moyenne » à « somme » divisé par « longueur de « liste de données ».
Tandis que le même résultat peut être obtenu avec une seule ligne de code dans une feuille de calcul.
Habileté : décrire l’incidence des changements sur le code
Même si l’essai et l’erreur occupent une place importante dans la création de séquences de code, il est important que l’élève puisse justifier ses choix de changements à un code existant en faisant des prédictions de l’effet des changements sur le comportement du code. Cela est aussi important lorsqu’on modifie un code pour le rendre efficace, car il est possible d’introduire des changements qui ont une incidence non voulue ou négative sur le résultat final.
Par exemple, l’intervalle de collecte dans une séquence de code qui permet de recueillir des données de températures ambiantes dans une pièce peut avoir une incidence sur les données. Il serait d’abord possible de demander aux élèves ce qui se passerait si la température était mesurée et enregistrée chaque seconde, ou chaque minute, ou chaque heure, et comment ces changements pouvaient changer la visualisation des données.