3/16
1. Introduction à la programmation
Cette fiche a pour but de donner les seuls éléments de programmation nécessaires au pilotage d’un
robot filoguidé pour les Trophées. Pour approfondir, nous vous renvoyons vers les ouvrages de
références sur la programmation en langage C et plus particulièrement ceux dédiés à l’Arduino.
La programmation est connue et pratiquée depuis longtemps maintenant et les programmeurs ont
quitté les salles informatiques de la taille d’un immeuble et leurs blouses blanches (cliché des années
60) pour la table du salon ou le canapé, armés d’un portable ou d’une tablette et d’un
microcontrôleur pas plus grand qu’une carte de crédit, voir plus petit encore.
Mais les principes ont peu changé, à peine une fois tous les 10 ans. Nous sommes actuellement dans
l’ère du REST (representational state transfer) qui succède ) celle du SOA (Service Oriented
Architecture), qui a suivi la révolution objet, qui faisait elle-même suite à la programmation
procédurale…
Plus simplement, pour l’Arduino, nous nous contenterons des bases de l’algorithmique et d’éléments
du langage C – une vingtaine de mots tout au plus – qui sont bien approprié à ce que nous
souhaitons faire. Pour la suite, la programmation visuelle est un outil bien plus puissant que la
programmation manuelle, encor faut-il comprendre ce que l’on programme.
2. Un peu d’algorithmique
En 1976 (bientôt 40 ans), un des pères fondateurs de la programmation moderne, appelée la
programmation structurée à l’époque, avait posé une équation aussi fondamentale que simple, qui
était d’ailleurs le titre de son ouvrage :
Algorithms + Data Structures = Programs
Algorithmes + structures de données = Programmes
Dès lors, et malgré le rapprochement des données et des programmes apportés par l’approche objet,
programmer n’est pas autre chose que l’application d’algorithmes à des structures de données. Pour
simplifier et parce que la plupart des algorithmes sont disponibles sur étagères, nous allons nous
concentrer sur les structures de contrôles et les structures de données