Il existe de nombreuses façons de programmer une machine, différents schéma de pensée qui sont apparus et ont évolués au cours du temps, ce sont les paradigmes de programmation.
Les langages de programmation sont nombreux et variés. Il n’est pas inusuel qu’un langage appartienne à plusieurs de ces paradigmes, c’est par exemple le cas de Python.
Certains de ces paradigmes sont mieux adaptés que d’autres pour traiter des problèmes spécifiques. On verra aussi ultérieurement qu’il est possible d’utiliser plusieurs paradigmes à l’intérieur d’un même programme.
Les paradigmes principaux sont impératif, objet, fonctionnel...
from IPython.display import HTML
HTML("""<center><iframe width="560" height="315" src="https://www.youtube.com/embed/5D7Shf9nG0Q" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></center>""")
Le paradigme sinon le plus ancien, tout au moins le plus traditionnel, est le paradigme impératif.
Les premiers programmes ont été conçus sur ce principe :
Une suite d’instructions qui s’exécutent séquentiellement, les unes après les autres ;
Ces instructions comportent :
La programmation impérative actuelle limite autant que possible les sauts sans condition. Ce sous-paradigme est appelé programmation structurée :
Les sauts sont utilisés en assembleur (instructions BR adr, « branch vers adresse » ).
En Python, on limite ainsi l’utilisation du break
à certains cas particuliers.
A l’inverse, une programmation utilisant de nombreux sauts est qualifié de « programmation spaghetti », pour la « clarté » toute relative avec laquelle on peut le dérouler. Certains langages conduisent facilement à ce style de code (BASIC, FORTRAN,…)
L’usage des fonctions comme vu en première est aussi une variante de la programmation impérative, appelée programmation procédurale. Elle permet de mieux suivre l’exécution d’un programme, de le rendre plus facile à concevoir et à maintenir, et aussi d’utiliser des bibliothèques.
Écrire un programme qui permet :
Contenus | Capacités attendues | Commentaires |
---|---|---|
Paradigmes de programmation. | Distinguer sur des exemples les paradigmes impératif, fonctionnel et objet. Choisir le paradigme de programmation selon le champ d’application d’un programme. |
Avec un même langage de programmation, on peut utiliser des paradigmes différents. Dans un même programme, on peut utiliser des paradigmes différents. |