Vous êtes sur la page 1sur 13

CHAPITRE 1: INTRODUCTION À L’APPROCHE DE

PROGRAMMATION OBJET
Classe: MEAA 1
Année universitaire: 2019/2020 Elaboré par : Mme Samia BEN ABDELJELIL
PARADIGMES DE PROGRAMMATION
On retrouve 2 aspects dans les programmes : les algorithmes et les données.

 Ceci n’a pas changé au cours de l’histoire de l’informatique.

 Ce qui a évolué, c’est la relation existant entre eux, qui s’appelle « paradigme de
programmation ».
Parmi ces paradigmes, on distingue essentiellement :

• Programmation procédurale • évolution des mécanismes


d’abstraction
• Programmation orientée objet • Outil pour gérer la
complexité
ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1
PARADIGMES DE PROGRAMMATION :
PROGRAMMATION PROCÉDURALE
Des langages évolués sont apparus (PASCAL, C, FORTRAN, etc.) préconisant une approche
procédurale.
Il s’agit de découper un programme en une série de fonctions lesquelles ont pour
but de réaliser un traitement particulier : programmation procédurale.
INCONVENIEN - dissocie les données des fonctions
TS qui les manipulent.
DONNÉES
- données globales
- couplage élevé des données
Sous-programmes (problème de maintenance du code)
et
programmes
- aucune technique permettant de
spécialiser des fonctions existantes.
ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1
PARADIGMES DE PROGRAMMATION :
PROGRAMMATION PROCÉDURALE
INCONVENIEN
TSdissocie les données des fonctions qui les manipulent :
 Dans un programme, il y’a une séparation complète entre code et données. La manipulation des
données se fait uniquement :

 À travers passage de paramètres


 À travers les variables globales
 couplage élevé des données (problème de maintenance du code)
 Problème de réutilisabilité : aucune technique permettant de spécialiser des
fonctions existantes.
 Problème de sécurité: vu qu’il y’a un libre accès aux données par n’importe quel
module.
ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1
PARADIGMES DE PROGRAMMATION :
PROGRAMMATION ORIENTEE OBJET
Buts:
- améliorer la réutilisation des outils existants
- favoriser la spécialisation de ces mêmes outils.
- s’éloigner de la machine et se rapprocher du problème à résoudre.
- développer une approche mieux adaptée à la résolution de problèmes.
- Nouvelle façon de penser la décomposition de problèmes et l’élaboration
de solutions  PENSER AUX DONNEES AVANT DE PENSER AU TRAITEMENT

Une nouvelle entité est créée, appelée objet, afin de regrouper les fonctions
et les données.
Peu ou pas de variables globales
Les traitements représentent des interactions entre les objets
ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1
CONCEPT DES OBJETS
 Comment les trouver?

A partir du monde réel

 Le monde est composé d’entités qui « collaborent »

 L’approche objet consiste à résoudre un problème en termes d’objets qui collaborent.

 Ces objets sont des abstractions des objets réels en ce sens qu’on ne peut toucher ou voir
leurs éléments constitutifs.

ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1


PROGRAMMATION OBJET

 Programmation dirigée par les données et non par les traitements


 Les procédures/fonctions existent toujours, mais on se concentre :
 d’abord, sur les entités à manipuler
 ensuite, comment les manipuler
 Les concepts mis en avant par la POO sont l’encapsulation, l’héritage et le polymorphisme
 Les outils qui supportent ces concepts sont : Les classes ou les prototypes
 Points forts (supposés)
 Du code plus proche du monde réel et donc plus facile à assimiler et à maintenir.
 Stabilité accrue : les modifications ne s’appliquent que localement à des sous-systèmes

ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1


PRINCIPES DE LA POO
 Objet et Classe
 Classe = définitions pour des données (variables) + fonctions (méthodes) agissant sur ces données
 Objet = élément d’une classe (instance) avec un état ; C’est un concept servant à représenter,
modéliser toute entité décrite selon ses propriétés et son comportement.
 Exemple: Objet intitulé « bonHomme » de type Employe (Classe)
bonHomme :
Employe

Propriétés ou attributs Comportement:


Prenom = « Foulen » se réveiller
méthodes
Nom = « Ben Foulen » Prénom se lever
Date de naissance = Nom marcher
12/09/2000 date de naissance manger
Lire
……. …
ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1
PRINCIPES DE LA POO
Encapsulation
 Permet de réunir au sein d’une même entité appelée classe, des données membres
(variables ou attributs) et des traitements (fonctions membres ou comportements).

 Les objets de ces classes ont la propriété de masquer l’information.

 Favorise un système de protection qui permet de contrôler l’accès aux données et


traitements de la classe.
On peut cacher le fonctionnement interne d’une classe et éviter que les objets de cette
classe soient utilisés de façon non conforme.

 Vu de l’extérieur, l’interface d’un objet (aussi appelé protocole) constitue la liste de tous
les services (i.e. les méthodes) auxquels les autres objets ont accès.

On ne peut modifier l’état d’un objet directement, on doit passer par l’interface.

ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1


PRINCIPES DE LA POO
Héritage
 Permet de définir une classe de base appelée aussi classe
mère, dont hérite d’autres classes appelées classes filles,
 Les classes filles représentent un cas particulier de cette
dernière, elles possèdent des attributs et/ou des méthodes en
plus
 L'héritage permet donc de spécialiser des classes anciennes
parfaitement au point:
 économie du code.
 structuration des fonctionnalités d'un programme
(lisibilité).

ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1


PRINCIPES DE LA POO
Polymorphisme
 Mécanisme de redéfinition du comportement des méthodes de la classe mère.
 Le polymorphisme traite la capacité de l'objet à posséder plusieurs formes.
 Un objet garde toujours la capacité de pouvoir redéfinir une méthode héritée.
 C’est la capacité du système à choisir la méthode qui correspond au type réel de l'objet en
cours.
 Il permet d'économiser des identificateurs de fonctions (lisibilité)

 Exemple:

ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1


EXERCICES
Exercice 1

 On cherche à modéliser par une classe un point du plan. Celui-ci est caractérisé par son abscisse et son ordonnée.
 Pour tout point, nous pouvons :
 Vérifier s'il s'agit de l'origine des axes.
 Appliquer une translation vers un autre point selon un delta (dx, dy).

Exercice 2
Un centre de formations organise une journée Big Data destinée aux enseignants, étudiants et industriels. Elle se
charge de la création de badges et de certificats pour tous les participants.
Identifiez les classes participantes

ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1


BIBLIOGRAPHIE

 Notions OO
 Timothy Budd, Introduction à la programmation par objets
 Bertrand Meyer, Conception et programmation par objets
 J. Cox, Object-oriented programming

ISET KAIROUAN - SEMESTRE 1 - 2019/2020 - MEAA1

Vous aimerez peut-être aussi