8Fermer10
geogeoLe 21/09/2009 à 21:34
Je vois plus ici le composite comme l'interface dont fait part Sasume. L'interface est composée de véhicules. Via composite elle peut déterminer le type d'un objet via une méthode descriptif (type d'objet, nom, identifiant ou autre). Les véhicules ont forcément des composants communs. Ainsi, la moto possède un réservoir d'essence tout comme la voiture mais pas le vélo. Un vélo possède des composants propres qui sont les pignons et les plateaux...
Bref mon explication n'est pas claire mais pour ma part je décomposerais le problème en composants. Connaissant les composants formant un objet, je pourrais déterminer son type (voiture, moto, vélo). Pour moi le problème a été pris à l'envers. On est partie d'un type abstrait (véhicule, vélo) vers du fonctionnel (pignons, vitesse, essence...).
Les caractéristiques d'un type d'objet (voiture, moto, vélo) n'ont pas forcément a être modélisé sous forme de classe, on peut tout simplement utilisé un fichier de description dans un format XML ou autre.
Pour conclure, le type d'un objet (voiture, vélo...) est construit de façon dynamique à l'exécution du programme par assemblage de composants plus ou moins spécifiques.
Mais encore faut-il avoir une hiérarchie de composants et d'objets importantes pour répondre au problème. Si il y a que 3 ou 4 classes, ça ne sert à rien de modéliser de cette façon. smile
Tout dépend donc du problème.