Méthodes de conception orientées objet

FST
Page 1 sur 10Lecteur de document UniversityLib

Méthodes de conception orientées objet

FST · Programming, Object-Oriented Design · course

Voir tous les documents en programmation

A . Abdellatif

MCOO - LFI2

Méthodes de conception orientées objet

Introduction aux méthodes de conception orientées objet

A. ABDELLATIF [email protected]

A. Abdellatif

MCOO

Sommaire

(cid:1) La technologie objet : (cid:2) Programmation OO (cid:2) Bases de données OO (cid:2) MCOO

(cid:1) Concepts de base de l’objet:

(cid:2) Objet (cid:2) Classe (cid:2) Encapsulation (cid:2) Spécialisation/généralisation (cid:2) Héritage (cid:2) Polyphormisme

(cid:1) Les trois dimensions du SI :

(cid:2) Dimension statique (cid:2) Dimension dynamique (cid:2) Dimension fonctionnelle

Introduction aux MCOO

2

MCOO - Introduction aux MCOO

1

A . Abdellatif

MCOO - LFI2

La technologie objet : vue d’ensemble

A. Abdellatif

Conception Orientée objet

Objet

Programmation Orientée objet

BD

Orientées objet

Introduction aux MCOO

3

A. Abdellatif

MCOO

La technologie objet : Programmation OO

1967 : Simula : 1ère introduction des

concepts d’objet et de classe 1976 : Smalltalk : 1ère station graphique Xerox Parc (pré-Macintosh) 1980 : C++ : introduction des concepts de

l’objet dans C

1980 : Object Pascal (Turbo Pascal) :

extension de Pascal

1995 : Java : introduit par Sun Microsystems 2004 : C# : introduit par Microsoft

Introduction aux MCOO

4

MCOO - Introduction aux MCOO

2

A . Abdellatif

MCOO - LFI2

A. Abdellatif

MCOO

La technologie objet : Bases de données OO

Deux courants d’idées : (cid:2) Le tout objet (cid:2) Le relationnel-objet

1980 : Extension du modèle relationnel avec quelques concepts

de l’objet (nouveaux types, héritage, …)

1985 : Postgres : Extension objet du SGBD relationnel Ingress 1986 : O2 : SGBDOO par le GIP Altair puis repris par la société

O2.

1985 - 1995 :

(cid:2) Parution d’autres SGBDOO : Orion, GemStone,

ObjectStore, …

(cid:2) Adoption du courant relationnel-objet par la majorité des éditeurs des SGBD relationnels : Oracle, Informix, Sybase, …

Introduction aux MCOO

5

A. Abdellatif

MCOO

La technologie objet : MCOO

Constituent une évolution des méthodes systémiques vers une plus grande cohérence entre les objets et leur dynamique.

Sont basées sur le concept d’objet.

Permettent de décrire la dynamique du SI comme un ensemble d’opérations rattachées aux objets.

Permettent réutilisation des composants du SI.

une meilleure modularité

Publicité

et

une

Utilisent une approche ascendante.

Introduction aux MCOO

6

MCOO - Introduction aux MCOO

3

¤ ¤ ¤ ¤ ¤ A . Abdellatif

MCOO - LFI2

A. Abdellatif

MCOO

Principales méthodes OO

OOD HOOD OOA OOA / OOD OMT

OOM UML

G. Booch Hood Technical Group S. Shlear et S. Mellor

T. Coal et E. Yourdon

J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorensen M. Bouzeghoub et A. Rochfeld OMG

Introduction aux MCOO

7

A. Abdellatif

MCOO

Concepts de base de l’objet

(cid:1) Objet (cid:1) Classe (cid:1) Encapsulation (cid:1) Spécialisation/Généralisation (cid:1) Héritage (cid:1) Polymorphisme

Introduction aux MCOO

8

MCOO - Introduction aux MCOO

4

A . Abdellatif

MCOO - LFI2

A. Abdellatif

MCOO

Notion d’objet

(cid:1) Un objet est la représentation d'un concept abstrait ou une abstraction d'un objet physique du monde réel.

(cid:1) Un objet est défini par :

◊ Des attributs. ◊ Des méthodes ◊ Une identité

Introduction aux MCOO

9

A. Abdellatif

MCOO

Notion d’objet : Exemple

Attributs :

N° immatriculation : 125 TU 9999 Marque : Renault Type : Laguna

Méthodes : Démarrer Accélérer Freiner

Identité :

"La voiture de M. Untel"

Introduction aux MCOO

10

MCOO - Introduction aux MCOO

5

A . Abdellatif

MCOO - LFI2

A. Abdellatif

MCOO

Notion de classe

(cid:1) Une classe décrit des objets ayant les mêmes

attributs et les mêmes méthodes. (cid:3) moule servant à fabriquer des objets.

(cid:1) Les objets rattachés à une classe sont les

instances de cette classe.

Exemples : Employé, Voiture, Commande, etc

Introduction aux MCOO

11

A. Abdellatif

MCOO

Notion d ’encapsulation

(cid:1) Permet de masquer les détails relevant de l’implémentation d’un objet (partie privée) et de ne laisser accessible que la vue externe (interface). (cid:1) L'encapsulation:

Publicité

◊ garantie la sécurité et l'intégrité des données ◊ augmente la maintenabilité en limitant la portée des

modifications

(cid:1) Exemple : Circuit intégré

Introduction aux MCOO

12

MCOO - Introduction aux MCOO

6

A . Abdellatif

MCOO - LFI2

A. Abdellatif

MCOO

Notion de spécialisation/généralisation

(cid:1) Généralisation : Regroupement au sein d'une super-classe des caractéristiques communes à un ensemble de classes (attributs et méthodes). (cid:1) Spécialisation : Adaptation des caractéristiques transmises par une ou plusieurs super-classes en leur caractéristiques des nouvelles (attributs et méthodes).

ajoutant

(cid:1) La généralisation et la spécialisation génèrent une

hiérarchie des classes.

Introduction aux MCOO

13

A. Abdellatif

MCOO

Spécialisation/Généralisation Exemple

Spécialisation

Généralisation

Plat

Viande

Dessert

Poulet

Steak

Gâteau

Fruit

Introduction aux MCOO

14

MCOO - Introduction aux MCOO

7

A . Abdellatif

MCOO - LFI2

A. Abdellatif

MCOO

Notion d’héritage

(cid:1) L'héritage

permet

des caractéristiques d'une super-classe vers ses sous-classes.

transfert

le

(cid:1) Une classe hérite des attributs et des

méthodes de tous ses ancêtres.

(cid:1) L'héritage constitue un premier moyen de

réutilisation.

Introduction aux MCOO

15

A. Abdellatif

MCOO

Notion de polymorphisme

C'est la capacité objets des même d'une de hiérarchie classes de répondre différemment à la même opération.

Introduction aux MCOO

Moyen de transport

• Vitesse moyenne • Nbre passagers

• Calculer distance • Démarrer

• Vitesse moyenne • Nbre passagers • Puissance • Calculer distance • Démarrer (démarrer moteur)

• Vitesse moyenne • Nbre passager • Altitude max • Calculer distance • Démarrer (démarrer réacteur)

• Vitesse moyenne • Nbre passagers • Tonnage • Calculer distance • Démarrer (démarrer turbine)

16

MCOO - Introduction aux MCOO

8

A . Abdellatif

Publicité

MCOO - LFI2

A. Abdellatif

MCOO

Les trois dimensions du SI

La plupart des méthodes objet ont une approche commune basée triple sur perception du SI.

une

Dimension fonctionnelle (flux/processus)

Dimension

statique (Objets)

Dimension dynamique (événement/état)

Introduction aux MCOO

17

A. Abdellatif

MCOO

Les trois dimensions du SI

dimension statique : décrit les objets du système, les associations entre ces objets, opérations et les correspondantes.

contraintes

les

dimension dynamique : représente les types d'événements qui peuvent survenir dans le SI et les changements d'états résultant du traitement de ces événements.

Introduction aux MCOO

18

MCOO - Introduction aux MCOO

9

¤ ¤ A . Abdellatif

MCOO - LFI2

A. Abdellatif

MCOO

Les trois dimensions du SI

¤ dimension fonctionnelle : représente les circulent entre les différents acteurs du SI, ainsi que les processus qui les transforment.

flux d'informations qui

Introduction aux MCOO

19

A. Abdellatif

MCOO

Couverture des 3 dimensions par les MCOO

DIMENSION

OOD

HOOD OOA/OOD

OMT

OOSE

OOM

UML

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

STATIQUE

DYNAMIQUE

FONCTIONNELLE

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

(cid:4)(cid:4)(cid:4)(cid:4)

Introduction aux MCOO

20

MCOO - Introduction aux MCOO

10