★ À maîtriser
📌 L’unité de travail est la fonction en programmation procédurale, tandis qu’elle est l’objet en programmation orientée objet.
Compléments
Les variables citées sont :
La séparation des données et des traitements en programmation procédurale peut rendre difficiles la réutilisation du code et la maintenance de grandes applications.
La POO applique l’idée « diviser pour régner » en décomposant un problème en problèmes plus simples.
Parmi les langages cités comme apparus dans les années 1980 figurent :
Parmi les langages fondés sur les principes de la POO figurent :
Fonction en procédural, objet en POO
Une classe comporte un nom, une composante statique constituée de ses attributs et une composante dynamique constituée de ses méthodes.
La classe Etudiant peut décrire un étudiant avec son nom, son CIN, son année de naissance et ses notes.
Un attribut peut être de type simple — entier, réel, chaîne ou caractère — ou être un objet d’une autre classe, comme Voiture ou Etudiant.
En Python, les attributs d’instance sont souvent créés dans init avec self.nom_attribut.
Les objets peuvent changer d’état au cours de leur cycle de vie, qui comporte une succession de changements d’état.
Un feu de signalisation peut avoir trois valeurs possibles pour sa couleur.
Une classe comme moule, ses objets comme exemplaires
★ À maîtriser
📌 Pour accéder à un attribut, on écrit la référence de l’objet, un point, puis le nom de l’attribut.
📌 Un élément public est accessible depuis toutes les classes, un élément protégé est réservé à la classe et aux classes héritières, et un élément privé est accessible uniquement aux méthodes de sa classe, pas aux classes héritières.
Compléments
Dans l’expression etudiant.nom, etudiant est la référence à l’objet et nom est l’attribut consulté.
En Python, un attribut préfixé par _ est considéré comme interne par convention.
En Python, un attribut préfixé par __ bénéficie d’un mécanisme de renommage, mais cela ne constitue pas une confidentialité absolue.
En Python, l’appel de la classe crée l’objet et déclenche son constructeur init.
La référence désigne l’objet sans être l’objet
★ À maîtriser
En Python, la méthode d’initialisation du constructeur est init.
L’encapsulation limite l’accès direct aux attributs, évite des modifications accidentelles et permet un accès contrôlé par des méthodes spécifiques.
Compléments
📌 Dans le cours, un constructeur sans paramètre est appelé constructeur par défaut, tandis qu’un constructeur avec au moins un paramètre est paramétré.
En Python, si aucun init n’est défini, la classe hérite de l’initialisation par défaut de object.
Un destructeur peut servir à libérer des ressources ou à assurer la fermeture de certaines parties du code.
Python gère automatiquement la mémoire grâce au ramasse-miettes, si bien qu’un destructeur explicite est généralement inutile.
📌 Les ressources externes comme les fichiers ou les connexions réseau doivent être nettoyées correctement.
Accès direct limité → état mieux protégé
★ À maîtriser
📌 Une méthode d’instance s’appelle pour un objet en écrivant sa référence, un point, le nom de la méthode et ses arguments, sous la forme nomObjet.nomMethode(arg1, arg2, ...).
Compléments
L’entête d’une méthode précise son nom, son type de retour et une liste éventuellement vide de paramètres d’entrée typés.
Dans l’exemple de calculer_somme, self désigne l’objet courant, x et y sont des paramètres, et le résultat est renvoyé avec return.
Python n’oblige pas à déclarer le type des paramètres dans la signature d’une méthode.
📌 La visibilité d’une méthode détermine qui peut l’appeler : en UML, une méthode publique peut être appelée depuis toutes les classes, une méthode protégée est réservée aux classes héritières et une méthode privée est limitée à sa classe.
En Python, _nom et __nom indiquent des intentions de visibilité par convention de nommage, sans reproduire exactement les règles d’accès d’autres langages.
Une méthode est définie dans une classe, puis appelée sur un objet, et self représente l’objet concerné.
Getter lit, setter modifie
★ À maîtriser
Compléments
Pour attribuer une note à un étudiant, l’utilisateur sélectionne l’étudiant et saisit la note, tandis que le mécanisme d’affectation reste caché.
L’héritage entre classes aide notamment à éviter la duplication du code.
Les avantages essentiels de la POO sont :
Teste tes connaissances sur Programmation orientée objet avec 21 questions à choix multiples et corrections détaillées.
1. Comment la programmation procédurale organise-t-elle les données et les traitements ?
2. Dans une application orientée objet, comment les objets contribuent-ils à accomplir les tâches ?
Mémorisez les concepts clés de Programmation orientée objet avec 48 flashcards interactives.
Comment la programmation procédurale organise-t-elle un programme ?
Elle le découpe en procédures ou fonctions qui manipulent des données séparées de leurs traitements.
Comment la programmation orientée objet organise-t-elle une application ?
En objets communicants réunissant chacun des données et des traitements.
Quelle est l’unité de travail en programmation procédurale ?
La fonction.
Importe ton cours et l'IA génère fiches, QCM et flashcards en 30 secondes.
Générateur de fiches