Bienvenue dans notre cours ‘Programmation orientée objet en Python’. Alors, dans cette partie , on traite un exemple très important qui représente la relation de composition entre deux classes. 

Relation de Composition

Entre deux classes, on peut trouver différents relations. Parmi les types de relations possibles entre deux classe, on a : la relation de composition.

L’exemple qu’on va traité va nous expliquer ça veut dire quoi relation de composition et comment l’implémenter en python.

Exemple

Supposons on a une classe Point qui décrit les caractéristiques d’un point. un point  a les coordonnées x et y. La classe Point est une classe simple qui peut être implémenter en python de la façon suivante :  

class Point:
def __init__(self,x=None,y=None):
self.__x=x
self.__y=y
#get et set
def getX(self):
return self.__x
def getY(self):
return self.__y
def setX(self,x):
self.__x=x
def setY(self,y):
self.__y=y
def Afficher(self):
return "(x:"+str(self.__x)+",y:"+str(self.__y)+")"

Puis, la classe qui nous intéresse est la classe vecteur.

Un vecteur est caractérisé  par deux extrémités . Chaque extrémité est un point. Ainsi, on dit qu’un vecteur est composé de deux points. D’où, la relation de composition entre les classes vecteur et point.

La classe vecteur sera implémenté en python comme suit : 

class Vecteur:
def __init__(self,extA=None,extB=None):
self.__extrimA=extA
self.__extrimB=extB
def getExtA(self):
return self.__extrimA
def setExtA(self,extA):
self.__extrimA=extA
def getExtB(self):
return self.__extrimB
def setExtB(self,extB):
self.__extrimB=extB
def Afficher(self):
#print("ExtremitéA: (",self.__extrimA.getX(),
",",self.__extrimA.getY(),")")
#print("ExtremitéB:",self.__extrimB.getX(),",",self.__extrimB.getY(),")")
print("ExtremitéB:",self.__extrimB.Afficher())

 Donc, on peut créer un objet vecteur  avec l’une des méthodes suivantes : 

#Méthode 1
v1=Vecteur()
p1=Point(12,8)
v1.setExtA(p1) p2=Point(15,6) v1.setExtB(p2) p3=Point(16,7) p4=Point(5,0)
v2=Vecteur(p3,p4)
v2.Afficher()
print("Longueur:",v2.longueur())

Ainsi, nous avons pu créer deux objets v1 et v2 avec deux méthodes différentes : ( pour chaque vecteur, on a besoin de deux points qui vont représenter les deux extrémités du vecteur)

  • v1 est crée et initialisé par le constructeur . C’est à dire, au moment de la création , on a donné les informations nécessaires
  • v2 est premièrement crée via le constructeur. Puis, initialiser en utilisant les modificateurs.

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 *