Blog ENI : Toute la veille numérique !
🐠 -25€ dès 75€ 
+ 7 jours d'accès à la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Design Patterns en Java
  3. Une étude de cas : la vente en ligne de véhicules
Extrait - Design Patterns en Java Descriptions et solutions illustrées en UML 2 et Java (5e édition) - Les 23 modèles de conception
Extraits du livre
Design Patterns en Java Descriptions et solutions illustrées en UML 2 et Java (5e édition) - Les 23 modèles de conception 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 patterns de conception.

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 dans le stock...

Prise en compte des patterns de conception

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

Description de la partie

Pattern de conception

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 d’une applet.

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 expression logique.

Interpreter

Retrouver séquentiellement les véhicules du catalogue....