bonjour,
j'énonce le problème:
On veut créer des véhicules. On peut alors créer une moto, une voiture ou même un 4x4. Ces véhicules ont des points communs comme par exemple avancer ou freiner. Cependant ils peuvent faire des choses spéciales. Par exemple une moto peut faire un wheeling, un 4x4 peut faire du tout terrain... Aussi, les véhicules sont classés par marque de fabriquant (ex: suzuki, ford etc..). Deux véhicules de marques différentes, auront par exemple un sigle différent, un type de moteur différent, des options différentes ou des fonctionnalité spéciales. A partir de ça j'aimerais construire un diagramme de classe.
La première idée (la plus simple) qui me vient est celle-ci (j'ai volontairement omis les méthodes et attributs qui ne nous intéresse pas vraiment):
https://www.dropbox.com/s/fpbp0xjvw7...diagramme1.png
Mais c'est pas top car beaucoup de redondances, et si on veut ajouter des marques il faut à nouveau créer des classe voiture, moto etc..
La deuxième solution que j'ai trouvé est d'ajouter une classe abstraite pour gérer les marques. Chacun des véhicules va instancier un objet héritant de la classe marque et va leur permettre d'avoir les caractéristiques d'une marque(je sais pas si je suis très clair ):
https://www.dropbox.com/s/e5z03y3q3b...diagramme2.png
Est-ce une solution convenable? y a t-il des solutions plus appropriées?
Merci pour vos réponses.
Partager