#!/usr/bin/env python # coding: utf-8 # # Paradigmes de programmation # # # 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](https://fr.wikipedia.org/wiki/Paradigme_(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... # In[1]: from IPython.display import HTML HTML("""
""") # > [Vidéo complémentaire à voir aussi](https://youtu.be/3S1iPJJ-lPA) # ## Programmation impérative : # # 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 : # - Affectations # - Boucles (pour.., tant que…, répéter…jusqu’à…) # - Conditions (si…sinon) # - Branchement/saut sans condition # # # - 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. # ## Rappels de programmation impérative structurée et procédurale en Python... # #

Activités de rappels à faire :

# # ### Exercice : Série de notes # Écrire un programme qui permet : # - de demander à l’utilisateur combien de notes il souhaite saisir → [ n ] # - de saisir les [ n ] notes comprise entre [ 0 ; 20 ] # - d’afficher la note la plus faible et la note la plus élevée # - de calculer la moyenne # # **** # ## Références aux programmes : # # # #

Langages et programmation

# # # # # # # # # # # #
ContenusCapacités attenduesCommentaires
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.