La programmation orientée objet (POO) est un paradigme de programmation qui a été conçu pour rendre la programmation plus structurée et plus intuitive.
En POO, les données et les comportements sont regroupés dans des objets qui représentent des concepts du monde réel.
Ce paradigme a été introduit pour résoudre les problèmes de la programmation procédurale, où les données et les comportements sont séparés dans des fonctions distinctes.
En Python, nous pouvons utiliser la POO pour construire des programmes plus complexes en définissant des classes qui décrivent les objets que nous voulons créer.
Une classe est un modèle pour les objets qui peuvent être créés à partir de cette classe.
Un objet est une instance d'une classe et peut avoir des données (appelées attributs) et des comportements (appelés méthodes).
Les objets peuvent être créés en appelant la classe comme une fonction.
Voici un exemple de code pour définir une classe "Personne" en Python :
class Personne:
def __init__(self, nom, age):
self.nom = nom
self.age = age
def parler(self):
print("Bonjour, je m'appelle", self.nom)
def marcher(self):
print(self.nom, "marche.")
Les attributs sont des données associées à un objet.
Dans notre exemple de la classe "Personne", les attributs sont nom et age.
Nous pouvons accéder aux attributs d'un objet en utilisant le nom de l'objet suivi d'un point et du nom de l'attribut.
Les méthodes sont des fonctions associées à un objet.
Dans notre exemple de la classe "Personne", les méthodes sont parler et marcher.
Nous pouvons appeler les méthodes d'un objet en utilisant le nom de l'objet suivi d'un point et du nom de la méthode.
La méthode __init__ est un constructeur qui est appelé lorsque nous créons un nouvel objet de la classe "
class Personne:
def __init__(self, nom, age):
self.nom = nom
self.age = age
def parler(self):
print("Bonjour, je m'appelle", self.nom)
def marcher(self):
print(self.nom, "marche.")
Exemple d'utilisation de la classe "Personne"
class Personne:
def __init__(self, nom, age):
self.nom = nom
self.age = age
def parler(self):
print("Bonjour, je m'appelle", self.nom)
def marcher(self):
print(self.nom, "marche.")
# Création d'un objet "personne1" de la classe "Personne"
personne1 = Personne("Alice", 30)
# Affichage des attributs de "personne1"
print("Nom :", personne1.nom)
print("Age :", personne1.age)
# Appel de la méthode "parler" de "personne1"
personne1.parler()
# Appel de la méthode "marcher" de "personne1"
personne1.marcher()
Nom : Alice
Age : 30
Bonjour, je m'appelle Alice
Alice marche.
Cet exemple montre comment nous pouvons utiliser la classe "Personne" pour créer des objets "Personne" qui ont les attributs et les comportements définis dans la classe.
Nous pouvons accéder aux attributs de l'objet en utilisant le nom de l'objet suivi d'un point et du nom de l'attribut, et appeler les méthodes de l'objet en utilisant le nom de l'objet suivi d'un point et du nom de la méthode.
L'héritage est un concept clé en programmation orientée objet qui permet de définir une nouvelle classe en héritant des attributs et des méthodes d'une classe existante.
Cela nous permet de créer une nouvelle classe en réutilisant le code déjà existant et en ajoutant de nouveaux comportements si nécessaire.
class Etudiant(Personne):
def __init__(self, nom, age, matricule):
Personne.__init__(self, nom, age)
self.matricule = matricule
def participer_au_cours(self):
print(self.nom, "participe au cours.")
Dans ce code, la classe "Etudiant" hérite de la classe "Personne" en spécifiant Personne entre les parenthèses lors de la définition de la classe.
Cela signifie que la classe "Etudiant" a accès à tous les attributs et les méthodes de la classe "Personne".
La méthode __init__ de la classe "Etudiant" appelle également la méthode __init__ de la classe "Personne" en utilisant Personne.__init__(self, nom, age) pour initialiser les attributs nom et age.
La classe "Etudiant" définit également un nouvel attribut matricule pour stocker le numéro d'inscription de l'étudiant.
Enfin, la classe "Etudiant" définit une nouvelle méthode participer_au_cours qui affiche un message indiquant que l'étudiant participe au cours.
# Création d'un objet "etudiant1" de la classe "Etudiant"
etudiant1 = Etudiant("Bob", 20, "E001")
# Affichage des attributs de "etudiant1"
print("Nom :", etudiant1.nom)
print("Age :", etudiant1.age)
print("Matricule :", etudiant1.matricule)
# Appel de la méthode "parler" héritée de la classe "Personne"
etudiant1.parler()
# Appel de la méthode "participer_au_cours" de la classe "Etudiant"
etudiant1.participer_au_cours()
Nom : Bob
Age : 20
Matricule : E001
Bonjour, je m'appelle Bob
Bob participe au cours.
# Création d'un objet "etudiant1" de la classe "Etudiant"
etudiant1 = Etudiant("Bob", 20, "E001")
Dans cette ligne, nous créons un nouvel objet "etudiant1" de la classe "Etudiant".
Nous passons les arguments "Bob", 20 et "E001" à la méthode __init__ pour initialiser les attributs nom, age et matricule de l'objet.
# Affichage des attributs de "etudiant1"
print("Nom :", etudiant1.nom)
print("Age :", etudiant1.age)
print("Matricule :", etudiant1.matricule)
Dans ces lignes, nous affichons les valeurs des attributs nom, age et matricule de l'objet "etudiant1".
# Appel de la méthode "parler" héritée de la classe "Personne"
etudiant1.parler()
Dans cette ligne, nous appelons la méthode parler de l'objet "etudiant1".
Comme la classe "Etudiant" hérite de la classe "Personne", l'objet "etudiant1" a accès à la méthode parler définie dans la classe "Personne".
# Appel de la méthode "participer_au_cours" de la classe "Etudiant"
etudiant1.participer_au_cours()
Dans cette ligne, nous appelons la méthode participer_au_cours de l'objet "etudiant1".
Cette méthode a été définie dans la classe "Etudiant".
Cet exemple montre comment nous pouvons utiliser l'héritage pour créer une nouvelle classe en réutilisant le code d'une classe existante et en ajoutant de nouveaux comportements si nécessaire.
J'espère que cet article a aidé les lecteurs à comprendre les concepts clés de la programmation orientée objet en Python.
J'ai montré comment définir des classes, comment créer des objets à partir de ces classes, comment utiliser les attributs et les méthodes, et comment utiliser l'héritage pour créer des classes en réutilisant le code existant.
Je remercie les lecteurs pour leur attention et les encourage à poursuivre leur apprentissage en regardant la vidéo démonstration sur ma chaîne YouTube.
Je suis convaincu que cette vidéo les aidera à comprendre les concepts de manière plus concrète et plus interactive.
Bonne chance dans leur apprentissage de la programmation orientée objet en Python !
Abonnez-vous
Abonner vous, pour recevoir les nouvelles publications et obtenir ma formation programmation pour débutant 100% gratuite.
À PROPOS
Je m'appelle Gregory Lafitte, ancien étudiant de l'école 42, et aujourd’hui ingénieur informatique.
Je partage mes connaissances et mon expérience dans les métiers du numérique.
Créé avec © systeme.io • Politique de confidentialité • Mentions légales