Patrons de conceptions de créations
description
Transcript of Patrons de conceptions de créations
Patrons de conceptions de créations
Elaboré par: Fatma Abbes &Rabeb Aouin
DSI3
2
PlanQu'est ce qu'un patron de conception?Pourquoi les utiliser?Types de patrons de conception :Patrons de création :Les différents patrons de création :
3
Qu'est ce qu'un patron de conception?Un patron de conception (plus connu sous le
terme anglais « Design pattern ») est une solution générique permettant de résoudre un problème spécifique.
La définition habituelle d'un patron est : “Une solution à un problème dans un
contexte.”Les patrons de conception sont :« Descriptions d'objets et de classes
communicantes qui sont adaptées à la résolution d'un problème général de conception dans un contexte particulier »
4
Qu'est ce qu'un patron de conception?Chaque patron de conception décrit un
ensemble d'objets et de classes communicants.
Cette notion peut paraître nouvelle, mais il s'agit en fait plutôt d'un nouveau terme pour désigner les algorithmes, et les structures de données permettant de résoudre différents problèmes. Un exemple : une liste chaînée permet d'avoir un groupe d'éléments dont le nombre n'est pas fixe, contrairement aux tableaux.
5
Qu'est ce qu'un patron de conception?Cette notion ne s'applique donc pas
seulement à la programmation orientée objet. Un autre exemple est l'architecture MVC (Modèle-Vue-Contrôleur) définissant une architecture où les fonctions (ou les classes en POO) ont un rôle bien défini.
Les patrons peuvent être utilisés dans de nombreux domaines différents, y compris le développement logiciel.
6
Pourquoi les utiliser?"Concevoir un logiciel orienté-objet est
difficile, et concevoir un logiciel orienté-objet réutilisable est encore plus difficile." - Erich Gamma
Les concepteurs expérimentés réutilisent des solutions qui ont fonctionné dans le passé.
Les systèmes orientés-objet bien structurés suivent des patrons récurrents pour les classes et objets.
7
Pourquoi les utiliser?Les patrons qui ont fonctionné dans le passé
permettent d'être plus productif. Les conceptions qui en résultent sont plus flexibles et réutilisables.
8
Types de patrons de conception :Les patrons sont regroupés en 3 catégories qui sont :Patrons de créationConcernent le processus de la création d'objetsLes patrons de création aident à créer des objets
pour vous, au lieu d’avoir à instancier les objets directement.
Patrons de structureConcernent la composition de classes et d'objetsLes patrons de structure aident à composer des
groupes d’objets en des structures plus larges, telles que des interfaces utilisateur complexes.
9
Types de patrons de conception : Patrons de comportementConcernent l'interaction des classes et des
objetsLes patrons de comportement aident à définir
la communication entre les objets du système et définir comment le flux est contrôlé.
10
Patrons de création :Un patron de création permet de résoudre les
problèmes liés à la création et la configuration d'objets.
Par exemple, une classe nommée Ressources Application gérant toutes les ressources de l'application ne doit être instanciée qu'une seule et unique fois. Il faut donc empêcher la création intentionnelle ou accidentelle d'une autre instance de la classe. Ce type de problème est résolu par le patron de conception "Singleton".
11
Les différents patrons de création :Singleton :Il est utilisé quand une classe ne peut être
instanciée qu'une seule fois.Prototype :Plutôt que de créer un objet de A à Z c'est à
dire en appelant un constructeur, puis en configurant la valeur de ses attributs, ce patron permet de créer un nouvel objet par recopie d'un objet existant.
12
Les différents patrons de création :Fabrique :Ce patron permet la création d'un objet dont la classe
dépend des paramètres de construction (un nom de classe par exemple).
Fabrique abstraite :Ce patron permet de gérer différentes fabriques
concrètes à travers l'interface d'une fabrique abstraite.Monteur :Ce patron permet la construction d'objets complexes en
construisant chacune de ses parties sans dépendre de la représentation concrète de celles-ci.
13