Académique Documents
Professionnel Documents
Culture Documents
Orientée Objet
Institut Supérieur des Etudes Technologiques de Bizerte
Anissa CHALOUAH
Le 08/12/2016
Anissa CHALOUAH 1
Introduction à l’approche objet
Anissa CHALOUAH 2
Qualité d’un logiciel : Problème
Anissa CHALOUAH 3
Qualité d’un logiciel : Solution
Calquer les techniques de développement du matériel
= > Sous-traiter
Acquérir des composants déjà éprouvé (déjà testé et dont la fiabilité
est assurée) auprès de vendeurs réputés et se charger uniquement
de l’assemblage des machines.
Livré à
Facile Portable Fonctionnel Vérifiable Intègre
temps
Anissa CHALOUAH 5
Qualité d’un logiciel : Critères
Livré à
Facile Portable Fonctionnel Vérifiable Intègre
temps
Anissa CHALOUAH 6
Qualité d’un logiciel : Critères
Anissa CHALOUAH 7
Qualité d’un logiciel : Critères
Anissa CHALOUAH 8
Qualité d’un logiciel : Critères
Anissa CHALOUAH 9
Qualité d’un logiciel : Critères
Anissa CHALOUAH 10
Qualité d’un logiciel : Critères
Livré à
Facile Un logiciel est efficient s'il utilise aussi peu
Portable Fonctionnel de ressources
temps que possible.Intègre
Vérifiable
Anissa CHALOUAH 11
Qualité d’un logiciel : Critères
Livré à
Facile Portable Fonctionnel Vérifiable Intègre
temps
Anissa CHALOUAH 12
Qualité d’un logiciel : Critères
Livré à
Facile Portable Fonctionnel Vérifiable Intègre
temps
Anissa CHALOUAH 13
Qualité d’un logiciel : Critères
Livré à
Facile Portable Fonctionnel Vérifiable Intègre
temps
Anissa CHALOUAH 14
Qualité d’un logiciel : Critères
Livré à
Facile Portable Fonctionnel Vérifiable Intègre
temps
Anissa CHALOUAH 15
Qualité d’un logiciel : Critères
Livré à
Facile Portable Fonctionnel Vérifiable Intègre
temps
Anissa CHALOUAH 16
Qualité d’un logiciel : Critères
Livré à
Facile Portable Fonctionnel Vérifiable Intègre
temps
Anissa CHALOUAH 17
Qualité d’un logiciel : Critères
Livré à
Facile Un logiciel est réparable si l'on peut corriger
Portable Fonctionnel
temps ses fautes facilement.
Vérifiable Intègre
Anissa CHALOUAH 18
Qualité d’un logiciel : Critères
Facile
Un logiciel est économique
Portable
s'il coûte ceLivré
Fonctionnel
qui àavait étéVérifiable
prévu dans le Intègre
budget ou moins.
temps
Anissa CHALOUAH 19
Qualité d’un logiciel : Critères
Livré à
Facile Portable Fonctionnel Vérifiable Intègre
temps
Anissa CHALOUAH 20
Qualité d’un logiciel : Critères
Facile
documentation
Portable
externe : pour
Fonctionnel
lesàutilisateurs
Livré
Vérifiable Intègre
documentation interne : pour les développeurs
temps
Anissa CHALOUAH 21
Qualité d’un logiciel : Points clés
Modéliser Modulariser
Encapsuler
Anissa CHALOUAH 22
Le paradigme Objet
Anissa CHALOUAH 23
L’approche objet
Décomposer un programme en un
ensemble d’entités (objets) qui
interagissent afin de réaliser une ou
plusieurs tâches.
Chaque objet possède certaines
propriétés et peut accomplir certaines
opérations.
Anissa CHALOUAH 24
Paradigme objet
Anissa CHALOUAH 25
Programmation procédurale vs Programmation Objet
Programmation procédurale structuré PPS Programmation Orientée Objet POO
Anissa CHALOUAH 26
Programmation procédurale structuré PPS Programmation Orientée Objet POO
Programme Programme
Objet 1
Données
Objet 2
Variable
Données
Variable
Traitements
Données
Traitements Traitements
Procédure
Fonction
Données
Fonction Traitements
Procédure Objet 3
Anissa CHALOUAH 27
Programmation procédurale vs Programmation Objet
Programmation procédurale structuré PPS Programmation Orientée Objet POO
Séparation des données & des traitements Liaison inévitable entre données et
procédures opérant sur ces données
Anissa CHALOUAH 28
Programme Son
Une entité
OO exécution
les entités
un objet qui
collaborent
prend en
Une pour résoudre
compte sa
association le problème
propre gestion
d’entités final en
(objet
s'envoyant des
responsable)
messages.
Anissa CHALOUAH 29
Concepts fondamentaux de la POO
Anissa CHALOUAH 30
Concepts fondamentaux de la POO
Anissa CHALOUAH 31
L’Objet
Un objet en POO est une entité informatique utilisée pour modéliser informatiquement
des "objets" de la vie courante ou des concepts.
Un objet réagit à certains messages qu’on lui envoie de l’extérieur ; la façon dont il réagit
détermine le comportement de l’objet.
Il ne réagit pas toujours de la même façon à un même message ; sa réaction dépend de
l’état dans lequel il est.
Anissa CHALOUAH 32
L’objet
Un objet possède :
Une identité unique (permet de distinguer un objet d’un autre)
Un état interne donné par des valeurs de variables (ou attributs)
Attributs décrivent l’état de l’objet à un instant donné
Un comportement (capacités d’action de l’objet) donné par des fonctions ou sous-
programmes, appelés méthodes (ou opérations).
Ces méthodes définissent le comportement de l’objet (ce qu’il peut faire, comment il peut le
faire…) et ses réactions aux stimulations externes.
Anissa CHALOUAH 33
L’objet : Exemples
Anissa CHALOUAH 34
Interaction entre objets
Les objets interagissent et communiquent entre eux par l’envoi de messages
Les méthodes publiques d’un objet correspondent aux messages que l’on peut lui
envoyer
Les messages sont caractérisés par
objet cible du message
nom de la méthode à déclencher
paramètres de cette méthode
La réponse à la réception d’un message consiste à exécuter la méthode associée
Anissa CHALOUAH 35
Interaction entre objets
Anissa CHALOUAH 36
Classe
Une classe est la description des caractéristiques communes à tous les objets.
Anissa CHALOUAH 37
Classe
On définit l’objet comme l’instance d’une classe. Instancier une classe revient donc à
créer un objet à l’image de la classe,
La classe représente pour l’objet ce que représente le type pour la variable.
Anissa CHALOUAH 38
Classe & Objet : Exemple
M1 : Montre
- Heure : 9 ;
- Minutes :15 ;
Montre - Secondes : 35 ;
- Heure : int ;
- Minutes :int ;
- Secondes : int ; M2 : Montre
+setHeure(int h) - Heure : 10 ;
+setMinute(int m) - Minutes :45 ;
+setSeconde(int s) - Secondes : 15 ;
+getHeure() : int
+getMinute() : int
+getSeconde() : int M3 : Montre
- Heure : 18 ;
- Minutes :30 ;
- Secondes : 30 ;
Anissa CHALOUAH 39
L’abstraction
Anissa CHALOUAH 40
L’abstraction : Exemple
Anissa CHALOUAH 41
Encapsulation
Encapsulation
C’est le fait de regrouper au C’est également un processus
sein d’une même entité (l’objet), qui permet l’isolement et la
les données (attributs) et les dissimulation des détails
traitements (méthodes). d’implémentation.
Anissa CHALOUAH 42
L’encapsulation : Exemple
Anissa CHALOUAH 43
L’héritage
Il permet de créer une nouvelle classe à partir d'une classe déjà existante.
Le nom "Héritage" indique le fait que la classe fille (la classe nouvellement créée)
contient les attributs et les méthodes de sa classe mère (la classe dont elle dérive).
En effet, les attributs et les méthodes de la classe mère (appelée aussi superclasse)
sont hérités par la classe fille (appelée aussi classe dérivée). Toutefois, de nouveaux
attributs et méthodes peuvent être ajoutés.
Anissa CHALOUAH 44
L’héritage : Exemple
Anissa CHALOUAH 45
Le polymorphisme
Le nom de polymorphisme vient du grec et signifie « qui peut prendre plusieurs
formes ».
Alors que l'héritage concerne les classes (et leur hiérarchie), le polymorphisme est
relatif aux méthodes des objets.
Le polymorphisme représente la faculté d’une méthode à pouvoir s’appliquer à des objets
de classes différentes.
Le polymorphisme est un mécanisme qui permet à une sous classe de redéfinir une
méthode dont elle a hérité tout en gardant la même signature de la méthode.
Anissa CHALOUAH 46
Le polymorphisme : Exemple
Dans une société, le calcul du salaire d’un administratif se fait selon une
formule fixe alors que celui d’un commercial dépend d’une commission
sur la quantité vendu.
On peut utiliser la même méthode calcul_salaire pour ces deux classes
différentes et avoir un comportement différent selon l’objet de la classe
qui a appelé la méthode.
Commercial
Anissa CHALOUAH 47
Conclusion
En POO, le résultat du processus d’abstraction et d’encapsulation est une classe
Une classe = Un type d’objet
Anissa CHALOUAH 48