Design Pattern: Développement et Bonnes pratiques

Post on 23-Jan-2018

260 views 1 download

Transcript of Design Pattern: Développement et Bonnes pratiques

DESIGN PATTERN Introduction

Alex Wilfried OUATTARAalex.ouattara@studentpartner.com

Alexwilfriedo (Skype)

Alex Wilfried OUATTARA (G+)

PLAN

1- Quèsaco ?

1- Quèsaco ?

2- Les modèles de création

1- Quèsaco ?

2- Les modèles de création

3- Les modèles de structuration

1- Quèsaco ?

2- Les modèles de création

3- Les modèles de structuration

4- Les modèles de comportement

1- Quèsaco ?

2- Les modèles de création

3- Les modèles de structuration

4- Les modèles de comportement

5- Conclusion

QUESACO ?

1- Quèsaco(définition)

Arrangement caractéristique de modules reconnus comme bonne pratique en réponse à un problème de

conception d’un logiciel.

1- Quèsaco(définition)

Arrangement caractéristique de modules reconnus comme bonne pratique en réponse à un problème de

conception d’un logiciel. (Wikipédia, 2015)

1- Quèsaco(définition)

Arrangement caractéristique de modules reconnus comme bonne pratique en réponse à un problème de

conception d’un logiciel. (Wikipédia, 2015)

Chaque patron décrit un problème qui se manifeste constamment dans notre environnement, et décrit le

cœur de la solution à ce problème, d’une façon telle que l‘on puisse réutiliser cette solution des millions de fois,

sans jamais le faire deux fois de la même manière.

1- Quèsaco(définition)

Arrangement caractéristique de modules reconnus comme bonne pratique en réponse à un problème de

conception d’un logiciel. (Wikipédia, 2015)

Chaque patron décrit un problème qui se manifeste constamment dans notre environnement, et décrit le

cœur de la solution à ce problème, d’une façon telle que l‘on puisse réutiliser cette solution des millions de fois,

sans jamais le faire deux fois de la même manière. (Christopher Alexander, 1977)

1- Quèsaco(définition)

Arrangement caractéristique de modules reconnus comme bonne pratique en réponse à un problème de

conception d’un logiciel. (Wikipédia, 2015)

Chaque patron décrit un problème qui se manifeste constamment dans notre environnement, et décrit le

cœur de la solution à ce problème, d’une façon telle que l‘on puisse réutiliser cette solution des millions de fois,

sans jamais le faire deux fois de la même manière. (Christopher Alexander, 1977)

Les patrons offrent la possibilité de capitaliser un savoir précieux né du savoir-faire d’experts.

1- Quèsaco(définition)

Arrangement caractéristique de modules reconnus comme bonne pratique en réponse à un problème de

conception d’un logiciel. (Wikipédia, 2015)

Chaque patron décrit un problème qui se manifeste constamment dans notre environnement, et décrit le

cœur de la solution à ce problème, d’une façon telle que l‘on puisse réutiliser cette solution des millions de fois,

sans jamais le faire deux fois de la même manière. (Christopher Alexander, 1977)

Les patrons offrent la possibilité de capitaliser un savoir précieux né du savoir-faire d’experts.

(Bushman, 1996)

1- Quèsaco(Intérêts)

Les Design Pattern servent à documenter des bonnes pratiques basées sur l’expérience.

1- Quèsaco(Intérêts)

Les Design Pattern servent à documenter des bonnes pratiques basées sur l’expérience.

Ils proposent des solutions à des problèmes qui peuvent être difficilement résolus par un seul composant(Exemple: Le pattern Observer : sujet et observateur)

1- Quèsaco(Intérêts)

Les Design Pattern servent à documenter des bonnes pratiques basées sur l’expérience.

NB: En programmation informatique, les Design Pattern peuvent être utilisés avant, pendant, ou après le travail de

programmation.

Ils proposent des solutions à des problèmes qui peuvent être difficilement résolus par un seul composant(Exemple: Le pattern Observer : sujet et observateur)

1- Quèsaco(Formalismes)

Nom

1- Quèsaco(Formalismes)

Nom Description du problème à résoudre

1- Quèsaco(Formalismes)

Nom Description du problème à résoudre Description de la solution (Appelée, Design Pattern)

1- Quèsaco(Formalismes)

Nom Description du problème à résoudre Description de la solution (Appelée, Design Pattern) Conséquences

1- Quèsaco(Formalismes)

Nom Description du problème à résoudre Description de la solution (Appelée, Design Pattern) Conséquences

NB: Ce formalisme aide surtout à mieux comprendre l’utilisation et la logique interne […]

1- Quèsaco(Les Familles)

Ils existe de nombreux Design Pattern, tous aussiimportant les uns que les autres. Cependant, ont lesregroupes sous trois grandes familles.

1- Quèsaco(Les Familles)

Ils existe de nombreux Design Pattern, tous aussiimportant les uns que les autres. Cependant, ont lesregroupes sous trois grandes familles.

Modèles de création

Modèles de structuration

Modèles de comportement

MODELE DE CREATION

2- Les modèles de créations

Un Design Pattern de création permet de résoudre les problèmes liées à la création et la configuration d’objets.

2- Les modèles de créations

Un Design Pattern de création permet de résoudre les problèmes liées à la création et la configuration d’objets.

Ils aident le développeur à réaliser des systèmes indépendant de comment ses objets sont créés,

composés et représentés.

2- Les modèles de créations

Un Design Pattern de création permet de résoudre les problèmes liées à la création et la configuration d’objets.

Ils aident le développeur à réaliser des systèmes indépendant de comment ses objets sont créés,

composés et représentés.

(Thème récurrent 1)

2- Les modèles de créations

Un Design Pattern de création permet de résoudre les problèmes liées à la création et la configuration d’objets.

Ils aident le développeur à réaliser des systèmes indépendant de comment ses objets sont créés,

composés et représentés.

(Thème récurrent 1)

Ils encapsulent tous, les connaissances à propos de quelle classe concrète le système utilise.

2- Les modèles de créations

Un Design Pattern de création permet de résoudre les problèmes liées à la création et la configuration d’objets.

Ils aident le développeur à réaliser des systèmes indépendant de comment ses objets sont créés,

composés et représentés.

(Thème récurrent 1)

Ils encapsulent tous, les connaissances à propos de quelle classe concrète le système utilise.

(Thème récurrent 2)

2- Les modèles de créations

Un Design Pattern de création permet de résoudre les problèmes liées à la création et la configuration d’objets.

Ils aident le développeur à réaliser des systèmes indépendant de comment ses objets sont créés,

composés et représentés.

(Thème récurrent 1)

Ils encapsulent tous, les connaissances à propos de quelle classe concrète le système utilise.

(Thème récurrent 2)

Ils masquent comment les instances des classes concrètes sont crées et mises ensembles.

2- Les modèles de créations

Les principaux Design Pattern de création sont

2- Les modèles de créations

Les principaux Design Pattern de création sont

Factory

2- Les modèles de créations

Les principaux Design Pattern de création sont

Factory

Abstract Factory

2- Les modèles de créations

Les principaux Design Pattern de création sont

Factory

Abstract Factory

Builder

2- Les modèles de créations

Les principaux Design Pattern de création sont

Factory

Abstract Factory

Builder

Singleton

2- Les modèles de créations

Les principaux Design Pattern de création sont

Factory

Abstract Factory

Builder

Singleton

Prototype

MODELE DE STRUCTURATION

3- Les modèles de

structuration

Un Design Pattern de structuration décrivent comment les classes et les objets sont composés pour former une

large structure.

3- Les modèles de

structuration

Un Design Pattern de structuration décrivent comment les classes et les objets sont composés pour former une

large structure.

Ils utilisent l’héritage pour composer des interfaces ou des implémentations.

3- Les modèles de

structuration

Les principaux Design Pattern de structuration sont

3- Les modèles de

structuration

Les principaux Design Pattern de structuration sont

Facade

3- Les modèles de

structuration

Les principaux Design Pattern de structuration sont

Facade

Decorator

3- Les modèles de

structuration

Les principaux Design Pattern de structuration sont

Facade

Decorator

Adpter

3- Les modèles de

structuration

Les principaux Design Pattern de structuration sont

Facade

Decorator

Adpter

Proxy

3- Les modèles de

structuration

Les principaux Design Pattern de structuration sont

Facade

Decorator

Adpter

Proxy

Composite

3- Les modèles de

structuration

Les principaux Design Pattern de structuration sont

Facade

Decorator

Adpter

Proxy

Composite

Flyweight

3- Les modèles de

structuration

Les principaux Design Pattern de structuration sont

Facade

Decorator

Adpter

Proxy

Composite

Flyweight

Bridge

MODELE DE COMPORTEMENT

Un Design Pattern de comportement sont relatifs aux algorithmes et à l’assignement des responsabilités entre

objets.

4- Les modèles de

comportement

Un Design Pattern de comportement sont relatifs aux algorithmes et à l’assignement des responsabilités entre

objets.

Il ne décrit pas juste le modèle des objets et des classes mais aussi comment ils communiquent entre eux.4- Les modèles

de comportement

Un Design Pattern de comportement sont relatifs aux algorithmes et à l’assignement des responsabilités entre

objets.

Il ne décrit pas juste le modèle des objets et des classes mais aussi comment ils communiquent entre eux.

Il utilise l’héritage pour distribuer des comportement entre les classes.

4- Les modèles de

comportement

Les principaux Design Pattern de comportement sont

Chain of Responsability

4- Les modèles de

comportement

Les principaux Design Pattern de comportement sont

Chain of Responsability

Command4- Les modèles de

comportement

Les principaux Design Pattern de comportement sont

Chain of Responsability

Command

Iterator4- Les modèles

de comportement

Les principaux Design Pattern de comportement sont

Chain of Responsability

Command

Iterator

Mediator

4- Les modèles de

comportement

Les principaux Design Pattern de comportement sont

Chain of Responsability

Command

Iterator

Mediator

Memento

4- Les modèles de

comportement

Les principaux Design Pattern de comportement sont

Chain of Responsability

Command

Iterator

Mediator

Memento

Observer

4- Les modèles de

comportement

Les principaux Design Pattern de comportement sont

Chain of Responsability

Command

Iterator

Mediator

Memento

Observer

State

4- Les modèles de

comportement

Strategy

4- Les modèles de

comportement

Strategy Visitor

4- Les modèles de

comportement

CONCLUSION

+

Les Design Pattern ou Patron de Conception sont des solutions à des

problèmes de Génie Logiciel issues de l’expérience d’experts.

+

Les Design Pattern ou Patron de Conception sont des solutions à des

problèmes de Génie Logiciel issues de l’expérience d’experts.

+

Ils permettent d’adopter de bonne pratique et de concevoir des logiciels

flexibles.

Les Design Pattern ou Patron de Conception sont des solutions à des

problèmes de Génie Logiciel issues de l’expérience d’experts.

+

Ils permettent d’adopter de bonne pratique et de concevoir des logiciels

flexibles.

Ceux sont des solutions 100% fiables

Les Design Pattern ou Patron de Conception sont des solutions à des

problèmes de Génie Logiciel issues de l’expérience d’experts.

+ -

Ils permettent d’adopter de bonne pratique et de concevoir des logiciels

flexibles.

Ceux sont des solutions 100% fiables

Les Design Pattern ou Patron de Conception sont des solutions à des

problèmes de Génie Logiciel issues de l’expérience d’experts.

+ -

Ils permettent d’adopter de bonne pratique et de concevoir des logiciels

flexibles.

Ceux sont des solutions 100% fiables

Une mauvaise utilisation des Design Pattern est de vouloir tous les utiliser

dans un même logiciel.

Les Design Pattern ou Patron de Conception sont des solutions à des

problèmes de Génie Logiciel issues de l’expérience d’experts.

+ -

Ils permettent d’adopter de bonne pratique et de concevoir des logiciels

flexibles.

Ceux sont des solutions 100% fiables

Une mauvaise utilisation des Design Pattern est de vouloir tous les utiliser

dans un même logiciel.

Ils faut s’assurer de la nécessité d’un Design Pattern avant de l’utiliser au risque

de rendre le code moins lisible.