21
DESIGN PATTERNS.PDF rmed19 SLIDE 1 1 Design patterns Mohammed Rhamnia

Design patterns avec Symfony

Embed Size (px)

Citation preview

Page 1: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 1

1

Designpatterns

Mohammed Rhamnia

Page 2: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 2

2

MohammedRhamnia

Qui suis je ?

Symfonian depuis 6ans.Ingénieur développeur chez EdatisConsultant Symfony indépendant

Page 3: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 3

3

C'est quoi un patron deconception ?Solution générique d'implémentation répondant à

un problème spécifique

S'applique avec La POO.

Originaire des travaux del’architecte Christopher Alexander

Formalisés dans le livre du GoF : Design Patterns Elements of Reusable ObjectOriented Software

Page 4: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 4

4

Catégories

Les patronsde

comportement

Les patrons de

structure

Les patrons de

création

Page 5: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 5

5

ClassificationGoF Enterprise IntegrationGRASP

- 23 patrons :* Factory* Observer* Adapter* Builder* Proxy* Prototype* Iterator* Visitor* ....

- 9 patrons :* Controller* Creator* High Cohesion* Indirection* Information Expert* Low Coupling * Polymorphism* Protected Variations* Pure Fabrication

- 10 catégories- Exemples :

* Gateway* Mapper* Layer Supertype* Separated Interface* Registry* Plugin* .....

Page 6: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 6

6

Model - View - Controller

Modèle : Gère les données.

Vue : Gère l'affichage des données.

Contrôleur : L'intermédiaire entre lemodèle et la vue

c

Exemple 1

Page 7: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 7

7

M-V-CExemple 1

Page 8: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 8

8

Patron de création permettant, à partird'une interface, de créer une famille

d'objets sans pour autant spécifier declasses concrètes.

Abstract FactoryExemple 2

Page 9: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 9

9

Patron de création permettant, à partird'une interface, de créer une famille

d'objets sans pour autant spécifier declasses concrètes.

Abstract FactoryExemple 2

Page 10: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 10

10

Abstract FactoryExemple 2

Page 11: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 11

11

Abstract FactoryExemple 2

Page 12: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 12

12

Le pattern Monteur (Builder) permetde créer des objets complexes à partir

d'autres objets.

BuilderExemple 3

Page 13: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 13

13

BuilderExemple 3

Page 14: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 14

14

BuilderExemple 3

Page 15: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 15

15

BuilderExemple 3

Page 16: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 16

16

Patron structurelle, il permet dedéplacer les données entres les objets

et la base de données.

Data MapperExemple 4

Page 17: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 17

17

Data MapperExemple 4

Page 18: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 18

18

Patron comportemental, qui permet deséparer de manière très simple les

données et les traitements associés.

VisitorExemple 5

Page 19: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 19

19

VisitorExemple 5

Page 20: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 20

20

VisitorExemple 5

Page 21: Design patterns avec Symfony

DESIGN PATTERNS.PDFrmed19

SLIDE 21

21

Thank you

medrhamnia.wordpress.com

Contact

@rmed19