01 // LE PROJET EN BREF
GROUNDHOG
RustLire un flux de températures et en tirer, à chaque valeur reçue, la tendance en cours.
Le titre fait référence au Jour de la marmotte : le programme reçoit des températures une par une, en direct, et doit en tirer immédiatement ce qu'il peut — la tendance en cours, son ampleur, sa régularité — puis signaler les retournements dès qu'ils se produisent. À la fin, il ressort les valeurs les plus aberrantes de toute la série. C'est un problème d'analyse sur des données qui arrivent au fil de l'eau plutôt que dans un fichier bien rangé, et c'est aussi l'occasion d'un premier vrai projet en Rust.
Programme Rust en boucle de lecture sur l'entrée standard : à chaque température reçue, calcul de trois indicateurs glissants sur une période donnée en argument (moyenne des hausses, évolution relative, écart-type), détection des retournements de tendance, puis liste des valeurs aberrantes au mot-clé STOP.
03 // APPORTS CLÉS
- Projet mené en Rust alors que le langage était libre
- Trois indicateurs maintenus sur une fenêtre glissante, recalculés à chaque valeur reçue
- Gestion d'erreur idiomatique : Result propagé jusqu'au code de sortie 84
AU-DELÀ DU SUJET
- Rust choisi pour un exercice qui n'imposait pas le langage
04 // ARBORESCENCE DU CODE
LECTURE DES SOURCES…