design patterns

13
Design Patterns Factory Method – Pattern de construction [DANT] Génie Logiciel 1

Upload: kamala

Post on 20-Mar-2016

26 views

Category:

Documents


0 download

DESCRIPTION

Design Patterns. Factory Method – Pattern de construction. Problématique. Une classe doit instancier des objets dont elle ne connaît que les classes abstraites, qu’elle ne peut instancier. Factory Method. Description : - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Design Patterns

Design Patterns

Factory Method – Pattern de construction

[DAN

T]

Géni

e Lo

gici

el

1

Page 2: Design Patterns

Problématique

Une classe doit instancier des objets dont elle ne connaît que les classes abstraites, qu’elle ne peut instancier. [D

ANT]

nie

Logi

ciel

2

Page 3: Design Patterns

Factory MethodDescription :

"Define an interface for creating an object, but let the subclasses decide which class to instantiate. The Factory method lets a class defer instantiation to subclasses.“

-Introduire une méthode abstraite de création d’un objet en reportant aux sous-classes concrètes la création effective.

Domaines d’utilisation :

-Une classe ne connaît que les classes abstraites des objets avec lesquels elle possède des relations.-Une classe veut transmettre à ses sous-classes les choix d’instanciation en profitant des mécanismes du polymorphisme.

[DAN

T]

Géni

e Lo

gici

el

3

Page 4: Design Patterns

Factory Method

Avantages du pattern Factory Method :

-Pouvoir instancier dynamiquement des sous-classes.-Augmenter la généricité du code par l’utilisation d’objets typés en abstrait.

Remarque :

-Le pattern Abstract Factory est implementé avec des méthodes de fabrique (Factory methods)

[DAN

T]

Géni

e Lo

gici

el

4

Page 5: Design Patterns

Factory Method

[DAN

T]

Géni

e Lo

gici

el

5

Exemple :

Page 6: Design Patterns

Factory MethodStructure générique du pattern :

[DAN

T]

Géni

e Lo

gici

el

6

Page 7: Design Patterns

Produit Abstrait

[DAN

T]

Géni

e Lo

gici

el

7

Page 8: Design Patterns

Produits concrets

[DAN

T]

Géni

e Lo

gici

el

8

Page 9: Design Patterns

Produits concrets

[DAN

T]

Géni

e Lo

gici

el

9

Page 10: Design Patterns

Créateur Abstrait

[DAN

T]

Géni

e Lo

gici

el

10

Page 11: Design Patterns

Créateurs Concrets

[DAN

T]

Géni

e Lo

gici

el

11

Page 12: Design Patterns

Classe utilisatrice du Pattern

[DAN

T]

Géni

e Lo

gici

el

12

Page 13: Design Patterns

Résultat en sortie

Le paiement de la commande au comptant de : 2000 est effectué.Le paiement de la commande au comptant de : 10000 est effectué.Le paiement de la commande au comptant de : 2000 est effectué.

On peut remarquer que la demande d’une commande assortie d’un crédit de 10000 a été refusée à cause de la contrainte exprimée dans la méthode valide() de CommandeCredit.

[DAN

T]

Géni

e Lo

gici

el

13