advertisement

patron de conception

100 %
0 %
advertisement
Information about patron de conception
Education

Published on March 8, 2014

Author: medshili

Source: slideshare.net

Description

desgin patron
patron adaptateur
advertisement

Université de Sousse Institut Supérieur des Sciences Appliqués et de Technologie Patrons de Conception (Adaptateur) Mohamed_recherche@hotmail.fr/Medshili_isetkr@hotmail.fr Réalisé par : Shili Mohamed 07/03/2014 M2RINFOSPI 1

Menu  Introduction Définition Représentation d’un patron de conception Organisation de patron de conception Les Exemples Conclusion 07/03/2014 M2RINFOSPI 2

Introduction Un pattern est une règle en trois parties exprimant une relation entre un contexte, un problème et une solution ( Alexander) D'après Buschmann . (1996), Un design pattern ou patron de conception est une solution éprouvée à un problème de conception récurrent. Un pattern s’exprime souvent par des interfaces et des classes abstraites, dans un schéma UML 07/03/2014 . M2RINFOSPI 3

Définition(1/3) Patron adaptateur Adaptateur est un patron de conception de type structural qui permet de convertir l'interface d'une classe en une autre interface que le client attend. Adaptateur fait fonctionner un ensemble des classes qui n'auraient pas pu fonctionner sans lui, à cause d'une incompatibilité d'interfaces. Source:(http://fr.wikipedia.org/wiki/Adapateur-patron) 07/03/2014 M2RINFOSPI 4

Définition(2/3) Structure Figure 1:Schéma UML du motif de conception Adaptateur(http://fr.wikipedia.org/wiki/) 07/03/2014 M2RINFOSPI 5

Définition(3/3) Participants Target: Cible Définit l'interface métier utilisée par le Client. Client Travaille avec des objets implémentant l'interface Target Adaptee Définit une classe existante devant être adaptée. Adapter Fait correspondre la classe de Adapté à l'interface Target 07/03/2014 M2RINFOSPI 6

Représentation d’un patron de conception(1/2) Les Design Patterns sont représentés par : • Nom : augmente le vocabulaire, réifie une idée de solution, permet de mieux communiquer. • Problème : quand appliquer la forme, le contexte... • Solution : les éléments de la solution, leurs relations, responsabilités, collaborations. Pas de manière précise, mais suggestives... • Conséquences : résultats et compromis issus de l'application de la forme 07/03/2014 M2RINFOSPI 7

Représentation d’un patron de conception(2/2) Exemple • Nom: Salle d ’attente • Problème :On doit attendre • Solution: Toujours relaxante et pas confinée • Conséquences: Attente active ou passive ? Durée de l ’attente ? Distraction ? • Exemples Aéroport, dentiste, ... 07/03/2014 M2RINFOSPI 8

Organisation des patrons de conception(1/4) On distingue trois familles de patrons de conception selon leur utilisation : 1. Patrons de création Donnent des solutions aux problèmes liés à l'instanciation des classes 2. Patrons de structure Donnent des solutions aux problèmes de structuration des classes, d'abstraction, de réutilisation 3. Patrons de comportement ils permettent d'organiser les objets pour qu’ils collaborent entre eux 07/03/2014 M2RINFOSPI 9

Organisation des patrons de conception(2/4) Patrons de création  Fabrique  Une méthode dans une classe dérivée créé les instances associées  Fabrique abstraite  Fabrique pour construire des objets liés  Monteur  Fabrique pour construire des objets complexes de manière incrémentale  Prototype  Fabrique pour cloner de nouvelles instances d'un prototype  Singleton  Fabrique pour n'avoir qu'une seule et unique instance 07/03/2014 M2RINFOSPI 10

Organisation des patrons de conception(3/4) Patrons de structure  Adaptateur  Un traducteur qui adapte une interface de serveur pour un client  Pont  Découpler l'interface d'une classe et son implémentation  Objet composite  Structure pour construire des agrégats récursifs  Décorateur  Etend un objet de manière transparente  Façade  Façade simplifie l'interface pour un sous-système  Poids-mouche  De nombreux objets partagés efficacement  Proxy  Un objet est l'approximation d'un autre 07/03/2014 M2RINFOSPI 11

Organisation des patrons de conception(4/4) Patrons de comportement  Chaine de responsabilité  Requête déléguée au fournisseur de service responsable  Commande  Requête comme objet de première classe  Interpréteur  Interpréteur de langage pour une petite grammaire  Médiateur  Médiateur coordonnes les interactions entre ses associés  Observateur  Les observateurs sont mis au courant des changements des observés  Etat  Object dont le comportement dépend de son état  Stratégie  Abstraction pour la sélection d'un parmi plusieurs algorithmes  Patron de méthode  Algorithme avec des pas fournit par une classe dérivée  Visiteur  Opérations appliquée aux éléments d'une structure d'objet hétérogène 07/03/2014 M2RINFOSPI 12

Exemple (1/2) Exemple 1 Problématique L’interface propriétaire ne correspond pas à celle utilisée dans notre code, le système existant ne peut donc pas utiliser la classe propriétaire. Figure N°2:Interface 07/03/2014 M2RINFOSPI 13

Exemple (2/2) Solution : Créer un adaptateur Figure N°3:Interface adaptateur 07/03/2014 M2RINFOSPI 14

Exemple (1/3) Exemple 2 Figure N° 4:serveur web gère des documents 07/03/2014 M2RINFOSPI 15

Exemple (2/3) Figure N° 5:serveur web gère des documents 07/03/2014 M2RINFOSPI 16

Exemple (3/3) 07/03/2014 Figure N° 6:serveurM2RINFOSPI web gère des documents 17

Exemple (1/3): Adaptateur (Adapter) Exemple 3 Exemple de situation : J’utilise une bibliothèque de traitement d’images (dont je ne peux pas modifier le code source). Pour fonctionner, elle attend un objet fournissant une interface d’accès en lecture et en écriture à un tableau en deux dimensions contenant des triplets d’octets. J’aimerais l’interfacer avec une bibliothèque fournissant une abstraction sur des tableaux unidimensionnels stockés de manière persistante dans une base de données ou dans un système de fichiers. Problème : Comment concilier les services proposés par la bibliothèque d’entrées/sorties et l’interface attendue par la bibliothèque de traitement d’images. Solution : Utiliser un objet qui implémente l’interface attendue en faisant appel aux services proposés par une instance de la bibliothèque d’entrées/sorties. 07/03/2014 M2RINFOSPI 18

Exemple (2/3) Figure N°7: code java 07/03/2014 M2RINFOSPI 19

Exemple (3/3) Figure N°8: code java 07/03/2014 M2RINFOSPI 20

Conclusion L’utilisation des Design Patterns offre de nombreux avantages. Tout d’abord cela permet de répondre à un problème de conception grâce à une solution éprouvée et validée par des experts. Ainsi on gagne en rapidité et en qualité de conception ce qui diminue également les coûts. De plus, les Design Patterns sont réutilisables et permettent de mettre en avant les bonnes pratiques de conception. 07/03/2014 M2RINFOSPI 21

Références Christopher Alexander, S. Ishikawa, M. Silverstein, M. Jacobson, I. Fiksdahl-King and S. Angel, (1977), A Pattern Language : Towns, Buildings, Construction, (ISBN 0-19501919-9) Design patterns - Tête la première, de Eric Freeman, Elisabeth Freeman, Kathy Sierra et Bert Bates. (ISBN 2-84177-350-7) (1re édition, septembre 2005) Pattern Languages of Program Design - James O. Coplien, Douglas C. Schmidt. (1995), (ISBN 0-201-60734-4) Les Patrons Abîmes - Détection, Explications et Restructuration - Cédric Bouhours, 2010, (ISBN 6-131-53501-9) Liste des patrons de conception avec exemples, problèmes, solutions et solutions alternatives. http://badger.developpez.com/tutoriels/dotnet/patterns/adaptateur 07/03/2014 M2RINFOSPI 22

07/03/2014 M2RINFOSPI 23

Add a comment

Related presentations

Related pages

Patron de conception — Wikipédia

En informatique, et plus particulièrement en développement logiciel, un patron de conception (plus souvent appelé design pattern) est un arrangement ...
Read more

Patron de conception - fr.wikibooks.org

En génie logiciel, un patron de conception (Design pattern en anglais) est une solution générique d'implémentation répondant à un problème spécifique.
Read more

Patrons de conception - PHP : La bonne manière

Patrons de conception. ... MVC est le patron d’architecture le plus utilisé par les frameworks PHP. En savoir plus sur le MVC et ses dérivés : MVC; HMVC;
Read more

Patrons de conception/Proxy — Wikilivres - fr.wikibooks.org

Un proxy est une classe se substituant à une autre classe. Par convention et simplicité, le proxy implémente la même interface que la classe à ...
Read more

Patronages of the Immaculate Conception - Wikipedia

An image of the Immaculate Conception venerated in the Shrine of Our Lady of Conception of Villa Vicosa was donated by Saint Nuno Álvares Pereira.
Read more

2.5 Patrons de conception - membres-lig.imag.fr

3 Patron de conception - définition C’est une description d’un problème et une solution bien connue validée par l’expérience
Read more

Who is the patron Catholic Saint of Conception? | Yahoo ...

This Site Might Help You. RE: Who is the patron Catholic Saint of Conception? and for clarification, I know that Saint Catherine of Sienna is ...
Read more

Patron de méthode — Wikipédia

La technique du patron de méthode (template method pattern) est un patron de conception (design pattern) comportemental utilisé en génie logiciel.
Read more

Our Lady of Aparecida - Wikipedia

Our Lady of the Conception ... Our Lady of Aparecida ... Pope Leo XII declared Saint Peter of Alcantara the "Patron of Brazil" on 31 May 1826.
Read more

Patrons de couture: Patrons français, européens ...

Les spécialistes du patron de couture en ligne, plus de 6000 références pour vos vêtements, la déco, les animaux, le patchwork, mariage, fêtes ...
Read more