codequick-darkmode-logo
ConnexionS'inscrire
Programmation orientée objet en Python

Syllabus:

Programmation orientée objet en Python

16 Leçons 262 Questions de Codage en Ligne


Quels sujets seront couverts dans le cours ?

Notions de base de la POO en Python

  1. Introduction:

    • Vue d'ensemble du cours et objectifs

    • Importance de la programmation orientée objet en Python

    • Prérequis et démarrage

  1. Classes et Objets:

    • Définition de classes et d'objets en Python

    • Comprendre les attributs de classe et les attributs d'instance

    • Implémentation de constructeurs (__init__) pour initialiser des objets

    • Création et manipulation d'objets

  1. Attributs et Méthodes:

    • Travailler avec des instance methods et class methods

    • Comprendre le method overloading et le method overriding

    • Mettre en œuvre des static methods

    • Encapsuler des données en utilisant des attributs private et protected

  1. Héritage:

    • Création et utilisation de sous-classes en Python

    • Mise en œuvre de l'héritage pour réutiliser du code

    • Comprendre l'ordre de résolution des méthodes (MRO)

    • Utiliser super() pour accéder aux méthodes de la superclasse

  1. Encapsulation:

    • Alors que nous approchons de la fin de notre parcours, nous nous concentrons sur l'encapsulation, un concept crucial en programmation orientée objet.

    • Explorer les modificateurs d'accès tels que public, private et protected

    • Comprendre comment les modificateurs d'accès restreignent l'accès aux membres de la classe

    • Mettre en œuvre l'encapsulation pour protéger les données au sein des classes

  1. Polymorphisme:

    • Comprendre le polymorphisme et ses types

    • Mise en œuvre de la surcharge de méthode et de l'opérateur

    • Utiliser le polymorphisme pour écrire du code flexible et réutilisable

  1. Méthodes spéciales (Méthodes magiques):

    • Explorer des méthodes spéciales telles que __str__, __repr__, __len__, __add__

    • Comprendre le but et l'utilisation des méthodes spéciales

    • Implémenter un comportement personnalisé en utilisant des méthodes spéciales

  1. Abstraction et Interfaces:

    • Comprendre les classes abstraites et les méthodes abstraites

    • Utilisation du module ABC (Abstract Base Classes) pour l'abstraction

    • Implémentation des interfaces et adhésion au contrat

  1. Composition et Agrégation:

    • Comprendre la composition et l'agrégation

    • Construire des objets complexes en utilisant la composition

    • Mise en œuvre de l'agrégation pour modéliser les relations

  1. Propriétés et Décorateurs:

    • Implémentation des méthodes getter et setter

    • Compréhension des décorateurs de propriété (@property, @setter, @deleter)

    • Utilisation des propriétés pour encapsuler les attributs

  1. Héritage Multiple:

    • Comprendre l'héritage multiple et ses pièges

    • Utiliser l'héritage multiple pour combiner les fonctionnalités de plusieurs classes

    • Gérer l'ordre de résolution des méthodes (MRO) dans l'héritage multiple

  1. Ordre de Résolution des Méthodes (MRO):

    • Ordre de Résolution des Méthodes (MRO), un aspect crucial de l'héritage en Python.

    • Comprendre comment Python détermine l'ordre dans lequel les méthodes sont résolues

    • Utiliser super() pour naviguer dans l'Ordre de Résolution des Méthodes

  1. Duck Typing:

    • Comprendre le concept de Duck Typing

    • Mettre en œuvre le Duck Typing pour écrire du code flexible

    • Utiliser le Duck Typing pour travailler avec différents types d'objets

  1. Ocultation des données:

    • Comprendre l'encapsulation et l'ocultation des données

    • Utiliser l'encapsulation pour restreindre l'accès aux données

    • Mise en œuvre des attributs et méthodes privés

  1. Composition plutôt qu'Héritage:

    • Comprendre le principe de la composition plutôt que de l'héritage

    • Identifier les scénarios où la composition est préférable

    • Construire un code flexible et maintenable en utilisant la composition

  1. Réflexions finales sur la programmation orientée objet en Python:

    • Réflexion sur le parcours d'apprentissage de la programmation orientée objet en Python

    • Remerciements et prochaines étapes