Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Du 22 au 24 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !
  1. Livres et vidéos
  2. Design Patterns en PHP
  3. Une étude de cas : la vente en ligne de véhicules
Extrait - Design Patterns en PHP Les 23 modèles de conception : descriptions et solutions illustrées en UML2 et PHP (2e édition)
Extraits du livre
Design Patterns en PHP Les 23 modèles de conception : descriptions et solutions illustrées en UML2 et PHP (2e édition)
2 avis
Revenir à la page d'achat du livre

Une étude de cas : la vente en ligne de véhicules

Description du système

Dans cet ouvrage, nous prenons l’exemple de la conception d’un système pour illustrer la mise en œuvre des vingt-trois design patterns proposés par le Gang of Four.

Le système à concevoir est un site web de vente en ligne de véhicules comme, par exemple, des automobiles ou des scooters. Ce système autorise différentes opérations comme l’affichage d’un catalogue, la prise de commande, la gestion et le suivi de clientèle. De plus, il est également accessible sous la forme d’un web service.

Cahier des charges

Le site permet d’afficher un catalogue de véhicules proposés à la vente, d’effectuer des recherches au sein de ce catalogue, de passer commande d’un véhicule, de choisir des options pour celui-ci avec un système de chariot virtuel. Les options incompatibles entre elles doivent également être gérées (par exemple "sièges sportifs" et "sièges en cuir" sont des options incompatibles). Il est également possible de revenir à un état précédent du chariot.

Le système doit gérer les commandes. Il doit être capable de calculer les taxes en fonction du pays de livraison du véhicule. Il doit également gérer les commandes payées au comptant et celles assorties d’une demande de crédit. Il prend en compte les demandes de crédit. Le système gère les états de la commande : en cours, validée et livrée.

Lors de la commande d’un véhicule, le système construit la liasse des documents nécessaires comme la demande d’immatriculation, le certificat de cession et le bon de commande. Ces documents sont disponibles au format PDF ou au format HTML.

Le système permet également de solder les véhicules difficiles à vendre, à savoir ceux qui sont...

Prise en compte des design patterns

Afin de réaliser les différentes contraintes exprimées dans le cahier des charges, nous utilisons dans les chapitres suivants les design patterns. Ceux-ci sont pris en compte dans les parties suivantes de la conception du site web :

Description de la partie

Design pattern

Construire les objets du domaine (automobile à essence, automobile à électricité, etc.).

Abstract Factory

Construire les liasses de documents nécessaires en cas d’acquisition d’un véhicule.

Builder, Prototype

Créer les commandes.

Factory Method

Créer la liasse vierge de documents.

Singleton

Gérer des documents PDF.

Adapter

Implanter des formulaires en HTML ou à l’aide de widgets.

Bridge

Représenter les sociétés clientes.

Composite

Afficher les véhicules du catalogue.

Decorator, Observer, Strategy

Fournir l’interface en service web du site.

Facade

Gérer les options d’un véhicule commandé.

Flyweight, Memento

Gérer l’affichage d’animations pour chaque véhicule du catalogue.

Proxy

Gérer la description d’un véhicule.

Chain of Responsibility

Solder les véhicules restés en stock pendant une longue durée.

Command

Rechercher dans la base de véhicules à l’aide d’une requête écrite sous la forme d’une...