Aller au contenu
Drones

Programmation

Introduction à la Programmation

🎯 Objectif : Comprendre ce qu'est la programmation, à quoi elle sert, et découvrir les 4 concepts fondamentaux qu'on retrouve dans TOUS les langages de programmation.

Slides du cours

1. C'est quoi, la programmation ?

Définition simple

Programmer, c'est donner des instructions à une machine pour qu'elle exécute une tâche.

Une machine (ordinateur, robot, drone, smartphone...) est fondamentalement "bête" : elle ne sait rien faire toute seule. Elle a besoin qu'on lui explique EXACTEMENT ce qu'elle doit faire, étape par étape, dans le bon ordre.

Un programme, c'est donc une liste d'instructions écrites dans un langage que la machine peut comprendre.

Analogie : La recette de cuisine 🍳

Imagine que tu dois expliquer à quelqu'un qui n'a JAMAIS cuisiné comment faire une omelette. Tu ne peux pas juste dire "fais une omelette" — il faut détailler :

  1. Prends 3 œufs
  2. Casse-les dans un bol
  3. Bats-les avec une fourchette
  4. Fais chauffer une poêle avec du beurre
  5. Verse les œufs battus dans la poêle
  6. Attends 2 minutes
  7. Retourne l'omelette
  8. Attends 1 minute
  9. Sers dans une assiette

C'est exactement ce que fait un programmeur : il écrit une "recette" ultra-détaillée pour la machine.

2. La programmation est PARTOUT

Tu utilises des programmes tous les jours sans t'en rendre compte :

Objet Programme qui tourne dedans
📱 Smartphone Applications, système d'exploitation
🚗 Voiture Système de freinage ABS, GPS, régulateur
🚦 Feu rouge Minuterie et capteurs de circulation
🏧 Distributeur de billets Vérification de carte, calcul du solde
🎮 Console de jeux Jeux vidéo, menus
🤖 Robot aspirateur Navigation, détection d'obstacles
✈️ Avion Pilote automatique, instruments de bord

Et dans ce cours ? On va programmer :

  • Des robots (Lego Mindstorm, robots roulants Arduino)
  • Des montages électroniques (LEDs, capteurs, écrans)
  • Des drones (Tello avec Python)

3. Les 4 concepts fondamentaux

Que tu programmes en Scratch, Python, C++, JavaScript ou n'importe quel autre langage, tu retrouveras TOUJOURS ces 4 concepts de base. Apprends-les une fois, utilise-les partout !

3.1 Les Instructions

Une instruction est un ordre simple donné à la machine.

Exemples :

  • "Avance de 10 pas"
  • "Allume la LED"
  • "Affiche 'Bonjour' à l'écran"
  • "Joue un son"

Un programme est une séquence d'instructions exécutées dans l'ordre, de haut en bas.

⚠️ L'ordre est crucial ! Si tu mets tes chaussettes APRÈS tes chaussures, ça ne marche pas...


3.2 Les Variables

Une variable est comme une boîte étiquetée dans laquelle on peut stocker une valeur.

┌─────────────┐
│   score     │  ← L'étiquette (le nom)
├─────────────┤
│     42      │  ← Le contenu (la valeur)
└─────────────┘

Caractéristiques importantes :

  • La boîte a un nom (l'étiquette) : score, vie, nom_joueur...
  • La boîte contient une valeur : un nombre, du texte, vrai/faux...
  • On peut lire ce qu'il y a dans la boîte
  • On peut modifier le contenu (la nouvelle valeur REMPLACE l'ancienne)

Exemple concret — Le score dans un jeu :

Au début :          score = 0
Étoile attrapée :   score = score + 10   → score vaut maintenant 10
Autre étoile :      score = score + 10   → score vaut maintenant 20

⚠️ Piège classique : Une variable ne peut contenir qu'UNE SEULE valeur à la fois. Si tu fais x = 5 puis x = 7, la variable x contient 7 (pas 12, pas les deux !).


3.3 Les Conditions

Une condition permet à la machine de prendre des décisions : faire quelque chose SI une situation est vraie.

Structure de base :

SI (quelque chose est vrai) ALORS
    faire ceci
SINON
    faire cela

Exemple — Le feu rouge :

SI le feu est rouge ALORS
    arrête-toi
SINON SI le feu est orange ALORS
    ralentis
SINON
    avance

Exemple — Jeu vidéo :

SI vies = 0 ALORS
    afficher "Game Over"
SINON
    continuer le jeu

On peut aussi combiner des conditions avec ET / OU :

  • SI il pleut ET j'ai pas de parapluie ALORS je reste à la maison
  • SI c'est samedi OU c'est dimanche ALORS c'est le weekend

3.4 Les Boucles

Une boucle permet de répéter des instructions plusieurs fois sans les réécrire.

Sans boucle (pénible) :

avancer
avancer
avancer
avancer
avancer

Avec boucle (malin) :

RÉPÉTER 5 FOIS
    avancer

Il existe 2 grands types de boucles :

Type Quand l'utiliser Exemple de la vie réelle
RÉPÉTER X FOIS Tu sais exactement combien de fois "Fais 20 pompes" 💪
TANT QUE Tu ne sais pas combien de fois, mais tu connais la condition d'arrêt "Mange tant qu'il reste des frites" 🍟

Exemple — Robot qui marche :

RÉPÉTER 10 FOIS
    lever jambe droite
    avancer jambe droite
    poser jambe droite
    lever jambe gauche
    avancer jambe gauche
    poser jambe gauche

Exemple — Lecteur de musique :

TANT QUE l'utilisateur n'appuie pas sur STOP
    jouer la chanson suivante

4. Programmation visuelle vs textuelle

Il existe deux façons d'écrire des programmes :

Programmation visuelle (Scratch)

On assemble des blocs colorés comme des Lego. Impossible de faire des erreurs de syntaxe !

Avantages : Facile, visuel, pas d'erreurs de frappe Utilisé pour : Apprendre la logique, Lego Mindstorm

Programmation textuelle (Python, C++...)

On écrit du code avec des mots et des symboles.

for i in range(10):
    avancer(10)
    tourner(15)

Avantages : Plus puissant, utilisé professionnellement Utilisé pour : Arduino, drones Tello, applications réelles

La bonne nouvelle 🎉

Les concepts sont IDENTIQUES ! Une fois que tu maîtrises les variables, conditions et boucles en Scratch, tu peux les appliquer dans n'importe quel langage. Seule l'écriture change, pas la logique.

5. Notre parcours dans ce cours

   Scratch        →   Processing    →    Arduino - C++   →    Tello - Python
(blocs visuels)      (code simple)      (électronique)           (drones)

On commence par le visuel pour comprendre la logique, puis on passe progressivement au textuel pour faire des choses de plus en plus puissantes !

📝 Récapitulatif

Concept C'est quoi ? Analogie
Instruction Un ordre simple Une étape de recette
Variable Une boîte qui stocke une valeur Un tiroir étiqueté
Condition Un choix selon une situation Un embranchement sur la route
Boucle Une répétition d'actions Un refrain de chanson

Ces 4 concepts sont les briques de base de TOUT programme informatique. Maîtrise-les et tu pourras programmer n'importe quoi ! 🚀


Prochain chapitre : Scratch — Apprendre à coder en s'amusant