Design pattern

6cobra45 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour Je suis un etudiant en informatique et je prepare un examen de design pattern , j ai recupere des anciens sujet que j ai traite seulement un exercice me pose probleme

Exercice 3
Une station service vendant des carburants Diesel, SP95, SP98 et GPL possède 5 pompes. Parmi ces pompes,
certaines ne proposent que certains types de carburant. Une pompe ne propose que du GPL, deux pompes proposent
tous les carburants (Diesel, SP95, SP98 et GPL) et deux autres pompes uniquement le Diesel et SP98. Il y a une caisse
unique pour payer à la sortie. Chaque voiture qui arrive pour se servir d’un type de carburant se met dans une des files
d’attente des pompes qui le distribue, attend son tour, se sert en carburant, puis rejoint la file d’attente de la caisse
(unique) pour payer le montant dont elle s'est servie.
a) Proposez une modélisation du système permettant d'ajouter facilement de nouvelles pompes dans la station (avec
les carburants supportés par ces pompes). PS : on ne demande pas ici de gérer les processus et la synchro !
b) Proposez une modélisation permettant d'ajouter facilement un nouveau type de carburant (e.g. électricité) ; les
pompes déjà existantes conserverons leurs carburants, par contre ce nouveau carburant sera possible pour les
nouvelles pompes.


Utiliser le pattern chain de responsabilite ou decorateur avec preference pour responsabilite.
Donc ce que je ferais c est que je definirais un type abstrait pompe avec reference sur un object suivant
je crerais trois type de pompe qui herite de cette classe abstraite
pompeGpl,PompeDieselSP98,PompeTout
la requete transiterait dans cette ordre pompeGpl =>pompeDieselSP98=>pompeTout

pour ajouter un nouveau carburant on rajoute une nouvelle pompe qui peut traite ce carburant la .

Je voudrais savoir ce que vous pensez de cette solution .
Cordialement et bonne vacance

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

L'énoncé te demande d'utiliser le design pattern [chaîne de responsabilité ou décorateur, avec une préférence pour le premier.

Ta proposition, ce n'est ni l'un, ni l'autre. Tu n'utilises pas du tout de design pattern et au cas où le problème devrait évoluer comme indiqué dans a) et b) ta proposition n'est plus du tout adapté.
0