Approche Objet
1 - Conception d’objet
La question est : De quoi parle-t-on ?
Quelles sont les entités qui interviennent dans mon problème ?
Exemple : modéliser un logiciel de trafic routier les entités sont :
- les feux tricolores
- les carrefours
- les véhicules
- les agents de la circulation.
Lorsqu’un feu tricolore passe au vert, il envoie cette connaissance (= ce message) à l’agent posté à ce carrefour. L’agent prend une décision et en informe (envoi de messages) les chauffeurs des véhicules.
un objet se compose d’informations et d’actions. Les actions utilisent (et parfois modifient) les informations de l’objet.
- L’ensemble des informations d’un objet donné est appelée son état.
- L’ensemble des actions applicables à un objet représente son comportement.
Les actions associées à un objet s’expriment généralement sous la forme de verbes à l’infinitif (créditer, débiter).
- partie interface : opérations qu’on peut faire dessus (partie publique)
- partie interne (intime) : données sensibles de l’objet (partie privée) Les utilisateurs (c’est-à-dire les éléments extérieurs) de l’objet ne voient que la partie interface.
Ces entités doivent être indépendantes
2 - Exemple d’objet
La renault R21 bleue immatriculée 2245 CDV 75 de mon chef de service est un objet
objet R21_de_mon_chef
genre : Renault
immatriculation : 2245 CDV 75
NbPlaces : 5
propriétaire: chef de service
s_arreter()
avancer()
fin objet
objet ma_Corsa
genre : Opel
immatriculation : 4357 NBG 93
NbPlaces : 4
propriétaire: Moi - même
s_arreter()
avancer()
fin objet
- contiennent des attributs aux valeurs différentes
- partagent un même comportement
3 - Un objet sans classe… n’a pas de classe
Le comportement correspond aux méthodes (l’autre nom pour les fonctions dans les classes)
Représentation UML de la classe

Exemple de classe
la classe des véhicules, la classe des camions, des automobiles.
La classe des automobiles peut être décrite par :
classe Automobile
genre
immatriculation
NbPlaces
propriétaire
s_arreter()
avancer()
fin classe
4 - Les classes et leur jardin secret
L’encapsulation consiste à gérer la classe comme boite noire responsable de sa propre cohérence.
Pour y parvenir, il est possible de définir la visibilité de chacun des membres d’une classe.
Un membre peut être :
- public(+) : visible par tous
- private(-) : visible uniquement des membres de la classe
- protected(#) : utile lors de l’héritage
- rien : (~) visibilité par défaut, uniquement au niveau package