[Java] Quel modele de conception choisir au lieu de l'heritage ?
Voici un probleme qui m'a ete soumis recemment. Je chercher la meilleure solution possible.
Soit une classe Voiture dont voici la description :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
public classe Voiture {
private String modele;
private Voiture(String modele) {
this.modele = modele
}
public String getModele() {
return modele;
}
public double getPrixHT() {
double prixHT;
// le prix est recupere dans une base de donnees distante.
...
return prixHT;
}
} |
Voila le probleme :
Une voiture peut etre achetee avec sans options supplementaire. Chaque option s'ajoute au prix de base.
Voici les options :
- Traitement anti corrosion : + 8% du prix de base.
- Boite automatique : + 500 Euros.
Donc il est possible d'acheter une voiture avec toutes les combinaisons d'option possible ou meme sans option.
Avez vous une piste a me proposer pour calculer le prix de la voiture avec ou sans options.
J'ai d'abord pense a l'heritage mais ce n'est pas recommande car toutes les options sont multiples et elles generent beaucoup de combinaisons.