Bienvenue dans notre cours ‘Programmation orientée objet en Python’. Ce cours traite les concepts fondamentaux de la POO. Aussi, on explique , puis implémente, les principes de la POO comme l’encapsulation, l’héritage, le polymorphisme et l’abstraction.

Alors, dans cette partie de cours, on va implémenter le principe d’encapsulation dans le langage Python.

Encapsulation en Python

Pour implémenter le principe d’encapsulation, les langages de programmation orientés objets introduisent et utilisent la notion de visibilité.

On a 3 types de visibilité:

  1. « + » ou public : tout le monde peut y accéder
  2. « # » ou protected : seules la classe possédant l’élément et les classes filles peuvent y accéder (voir notion d’héritage)
  3. « – » ou private : seule la classe possédant l’élément peut y accéder

Règle :

  • Les attributs doivent être privés
  • Les opérations définissant l’interface d’une classe doivent être publique (services offerts)
  • Des opérations peuvent aussi être privées si elles ne participent qu’au fonctionnement interne de la classe

1- Les attributs privés:

pour rendre les attributs privés, python impose d’utiliser un nom d’attribut qui commence par __ ( double underscore) .

Exemple :

class Stagiaire:
#constructeur
def __init__(self,numi,age,nom,prenom,note1,note2):
#rendre tous les attributs privés
self.numinscription=numi
self.__age=age
self.__nom=nom
self.__prenom=prenom
self.__note1=note1
self.__note2=note2

2- Les méthodes publiques : 

la plus part des méthodes doivent être publiques. En effet, elles représentent l’interface d’échange avec les autres éléments de l’application (la vue externe de la classe). 

Pour créer un membre publique dans une classe python, il suffit de choisir un nom , sans rien ajouter au début.

Exemple : création d’une méthode publique calculMoy

def calculMoy(self):
moy=(self.__note1+self.__note2)/2
print("La moyenne:", moy)

Remarque importante :

si pour une raison donnée, nous voulons définir un attribut publique ou une méthode  privée, alors, on utilise la règle générale d’implémentation de l’encapsulation en python :

1- Les membres privés doivent avoir un nom qui commence par __ ( double underscore)

2- Les membres publiques ont un nom simple

3- Les éléments protégés :

Si une classe donnée va etre une classe mère (voir la notion d’héritage), alors , elle doit rendre ses attributs protégés au lieu de privés. En effet, si elle définit des attributs privés, alors, les classes filles qui héritent ces attributs n’arrivent pas à les utiliser!!

pour définir un élément protégé, python propose de commencer son nom par un _ (underscore).

Exemple :

class Personne :
#constructeur
def __init__(self,numi,age,nom,prenom):
#rendre tous les attributs protégés
self._numinscription=numi
self._age=age
self._nom=nom
self._prenom=prenom

Vous pouvez suivre notre liste des vidéos sur la programmation orientée objet  sur notre chaine youtube 9raytifclick (Darija: arabe marocaine) : POO en Python

Aussi, si vous voulez commencer l’apprentissage d’un langage de programmation, voilà notre cours : Langage Python Niveau 1 qui sera très utile pour vous (il vous aide à pratiquer tous les éléments de base de la programmation ; vus dans notre cours d’algorithmique).

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *