Bonjour à tous,
Afin d'appliquer un peu les design patterns, je viens de réaliser un casse brique basique (pas d'intro, d'ennemis, d'effets, etc...).
Comme structure de base, je suis parti d'un MVC. Avec du recul, j'ai la nette impression que toutes les données du modèle(Model) sont dupliquées dans la vue.
J'ai fait le diagramme de classes pour clarifier un peu mes propos (aprés l'avoir codé, je sais c'est dans l'autre sens normalement) :
Il manque pas mal de relations, notamment des liens sujet/observateur un peu partout, mais c'était juste histoire de donner l'archi générale.
... Qui doit être assez catastrophique d'ailleurs.
Je pense que je m'y suis mal pris, et je pense que mon controleur devrait surement être un peu plus impliqué, mais je vois pas comment (la il gère les actions de la souris, les transistions entre les états début/en cours/pause/fin et les initialisation/sortie du jeu).
Un des intérêts de MVC étant de pouvoir changer de vue "comme de chemise", je m'étais mis en tête de pouvoir faire une vue 2D puis une vue 3D sans changer le modèle.
Mais je ne vois pas comment faire ça sans faire cette duplication modele/vue
Donc les questions (finalement):
Est ce que MVC est destiné à "dupliquer" tous ces objets?
Est ce que ma représentation de MVC est fausse (plus que probable) et dans ce cas comment la rectifier?
Est ce que MVC n'est pas indiqué pour cette appli (ça serait étonnant mais pourquoi pas) ou peut être y a t-il un modèle plus approprié?
Merci d'avance!
PS: Je précise au cas où que c'est pour du C++
Partager