Design patterns avec Symfony

Preview:

Citation preview

DESIGN PATTERNS.PDFrmed19

SLIDE 1

1

Designpatterns

Mohammed Rhamnia

DESIGN PATTERNS.PDFrmed19

SLIDE 2

2

MohammedRhamnia

Qui suis je ?

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

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

DESIGN PATTERNS.PDFrmed19

SLIDE 4

4

Catégories

Les patronsde

comportement

Les patrons de

structure

Les patrons de

création

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* .....

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

DESIGN PATTERNS.PDFrmed19

SLIDE 7

7

M-V-CExemple 1

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

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

DESIGN PATTERNS.PDFrmed19

SLIDE 10

10

Abstract FactoryExemple 2

DESIGN PATTERNS.PDFrmed19

SLIDE 11

11

Abstract FactoryExemple 2

DESIGN PATTERNS.PDFrmed19

SLIDE 12

12

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

d'autres objets.

BuilderExemple 3

DESIGN PATTERNS.PDFrmed19

SLIDE 13

13

BuilderExemple 3

DESIGN PATTERNS.PDFrmed19

SLIDE 14

14

BuilderExemple 3

DESIGN PATTERNS.PDFrmed19

SLIDE 15

15

BuilderExemple 3

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

DESIGN PATTERNS.PDFrmed19

SLIDE 17

17

Data MapperExemple 4

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

DESIGN PATTERNS.PDFrmed19

SLIDE 19

19

VisitorExemple 5

DESIGN PATTERNS.PDFrmed19

SLIDE 20

20

VisitorExemple 5

DESIGN PATTERNS.PDFrmed19

SLIDE 21

21

Thank you

medrhamnia.wordpress.com

Contact

@rmed19

Recommended