Vous êtes sur la page 1sur 5

Programmation orientée objet

Chapitre 3 :
Concepts de base de la programmation orientée objet

1. Structure d’un programme orienté objet


Un programme orienté objet est constitué d’un ensemble d’objets, qui portent des propriétés (données)
et échangent des messages (données) entre eux. La programmation orientée-objet propose une
méthodologie centrée sur les données. Le programmeur va d’abord identifier un ensemble d’objets,
tel que chaque objet représente un élément qui doit être utilisé ou manipulé par le programme, sous la
forme d’ensembles de données. Ce n’est que dans un deuxième temps, que le programmeur va écrire
les traitements, en associant chaque traitement à un objet donné. Un objet peut être vu
comme une entité regroupant un ensemble de données et de méthodes (l’équivalent d’une fonction
en C) de traitement.

Données Données

méthodes méthodes

Objet 1 Objet 2

Figure 1 structure d'un programme orienté objet

1.1. Objet

Un objet est une variable (presque) comme les autres variables de type primitif (int, double,…). Il faut
notamment qu’il soit déclaré avec son type.

10
Chiheb-Eddine Ben N’Cir
Programmation orientée objet

Un objet est constitué d’un ensemble de données (ses attributs) et d’un ensemble d’opérations
(méthodes) :

- Les données (ou champs) qui décrivent sa structure interne sont appelées ses attributs ;
- Les méthodes qu’a travers de celle-ci que les objets interagissent entre eux.

Un objet ne peut être généré qu’à partir d’un modèle. Le modèle de l’objet représente la classe. Un
objet est une instance d'une classe. Pour chaque instance d'une classe, le code est le même, seules les
données sont différentes à chaque objet.

1.2. Classe

La classe est une structure informatique particulière dans le langage objet. Elle décrit la structure
interne des données et elle définit les méthodes qui s'appliqueront aux objets de même famille (même
classe) ou type.

Une classe regroupe un ensemble de données (qui peuvent être des variables primitives ou des objets)
et un ensemble de méthodes de traitement de ces données et/ou de données extérieures à la classe. La
classe doit comporter obligatoirement une méthode spécifique (constructeur) qui permet de créer des
objets (instance de la classe).

Un ensemble des classes peut être groupées dans des dossiers appelés « package ».

Une classe est constituée d’attributs et de méthodes.

1.3. Attributs

Les attributs d’un objet sont l’ensemble des informations se présentant sous forme de variables et
permettant de représenter l’état de l’objet. Par exemple, les attributs d’un objet « étudiant » peuvent
etre son Nom, son prenom, ses Adresses, …, etc.

1.4. Méthodes

Une méthode est une fonction ou procédure liée à un objet qui est déclenchée à la réception d’un
message particulier : la méthode déclenchée correspond strictement au message reçu. La liste des
méthodes définies au sein d’un objet constitue l’interface de l’objet pour l’utilisateur. Ce sont les
messages que l’objet peut comprendre si on les lui envoie et dont la réception déclenche les méthodes
correspondantes.

1.5. Un package

Un programme orientés objet est construit d’un ou de plusieurs packages. Un package est un
ensemble de classes ayant le même domaine fonctionnel. Par exemple, dans une application de
gestion, on peut définir un package pour les classes « finance et comptabilité » et un autre package
pour les classes relative à la « gestion commerciale ».

11
Chiheb-Eddine Ben N’Cir
Programmation orientée objet

- Package comptabilité-Finance
- Classe plan comptable
Att 1
Att2
Méthode 1 ()
Méthode ()
…..

- Classe grand-livre
Att 1
Att2
Méthode 1 ()
Méthode ()
…..

- Classe balance

- Classe Facture
-Package gestion-commerciale

- Classe Produit-fabriqué

- Classe matière-première

- Classe commande
-Package principale

- Classe principale (contenant la méthode main())

2. Notions de base d’un programme orienté objet

2.1. Encapsulation
L’encapsulation est le fait qu’un objet renferme ses propres attributs et ses méthodes. Les détails de
l’implémentation d’un objet sont masqués aux autres objets du système à objets. On dit qu’il y a
encapsulation de données et du comportement des objets.

Il y a généralement trois modes d’accès aux attributs d’un objet (visiblité) :

- Le mode public avec lequel les attributs seront accessibles directement par l’objet lui-même ou par
d’autres objets. Il s’agit du niveau le plus bas de protection.

- Le mode private avec lequel les attributs de l’objet seront inaccessibles à partir d’autres objets :
seules les méthodes de l’objet pourront y accéder. Il s’agit du niveau le plus fort de protection.

- Le mode protected : cette technique de protection est étroitement associée à la notion d’héritage. Les
attributs sont accessible au sein du même package.

12
Chiheb-Eddine Ben N’Cir
Programmation orientée objet

2.2. Abstraction
C’est le fait de se concentrer sur les caractéristiques importantes d’un objet selon le point de vue de
l’observateur. L’abstraction peut être décrite comme un principe de factorisation. Les attributs et les
méthodes communes doivent être factorisés.

2.3. Séparation et spécialisation

Les classes définies (résultat de découplage) doivent être clairement séparables et ne partagent pas des
propriétés similaires. On ne doit pas trouver des méthodes et des attributs partagés par plusieurs
classes sauf s’il existe des liens d’héritages entre ces classes.

2.4. Héritage
La notion d’héritage est une relation entre différentes classes permettant de définir une nouvelle classe
en se basant sur les classes existantes. On parle d’héritage simple lorsqu’une classe fille ne possède
qu’une classe mère. On parle d’héritage multiple lorsqu’une classe fille possède plusieurs classes
filles.

3. Application : gestion de l’institution.


Décrire une modélisation orientée objet de l’exercice de la gestion de l’institution.

13
Chiheb-Eddine Ben N’Cir
Programmation orientée objet

Etudiant 1et 2 Etudiant 3


Nom Nom
Prenom Prenom
Adresse Adresse
CIN CIN
Note1 Note1
Note2 NotePFE
Saisir() Saisir()
Afficher() Afficher()
CalculerMoy() CalculerMoy()

Figure 2 Modélisation orientée objet du problème de la gestion de l'institution

Etudiant
Nom
Prenom
Adresse
CIN
Saisir()
Afficher()
CalculerMoy()

Etudiant 1et 2 Etudiant 3


Note1 Note1
Note2 NotePFE

Saisir() Saisir()
Afficher() Afficher()
CalculerMoy() CalculerMoy()

Figure 3 Modélisation orientée objet du problème de la gestion de l'institution

14
Chiheb-Eddine Ben N’Cir

Vous aimerez peut-être aussi