15
Abstract Factory Design Patterns

abstract factory pattern

Embed Size (px)

Citation preview

Abstract FactoryDesign Patterns

SIDAOUI Abdelfahem Email: [email protected] http://www.sidaoui.tk

réalisé par:

La fabrique abstraite est un patron de conception (design pattern) créationnel utilisé en génie logiciel orienté objet.

Elle fournit une interface pour créer des familles d'objets liés ou inter-dépendants sans avoir à préciser au moment de leur création la classe concrète à utiliser

Introduction

Fournir une interface pour créer des objets d'une même famille sans préciser leurs classes concrètes.

Objectif

Le système utilise des objets qui sont regroupés en famille. Selon certains critères, le système utilise les objets d'une famille ou d'une autre.

Le système doit utiliser ensemble les objets d'une famille.

Raison d’utilisation

La partie cliente manipuler les interfaces  des objets ; ainsi il y aura une indépendance par rapport aux classes concrètes.

Chaque fabrique concrète permet d'instancier une famille d'objets (éléments graphiques du même look and feel) ; ainsi la notion de famille d'objets est renforcée.

Raison d’utilisation

Le Design Pattern Fabrique abstraite (Abstract Factory) permet d'isoler l'appartenance à une famille de classes.

Résultat

Diagramme de classes

AbstractFactory : définit l'interface des méthodes de création.

FactoryImplA et FactoryImplB : implémentent

l'interface et instancient la classe concrète appropriée.

AbstractPlugin : définit l'interface d'un type d'objet instancié.

Responsabilités

PluginA et PluginB : sont des sous-classes concrètes. Elles sont instanciées respectivement par les FactoryImplA et FactoryImplB.

La partie cliente fait appel à une Fabrique pour obtenir une nouvelle instance d'AbstractPlugin. L'instanciation est transparente pour la partie cliente. Elle manipule une AbstractPlugin.

Responsabilités

Implémentation

Implémentation

Implémentation

Implémentation

Merci pour votre attention