J'ai une question concernant la conception de MVC, basée sur les conférences de Stanford iPhone.MVC question de la meilleure pratique
J'ai 3 classes;
Polygone - ceci contient des informations comme le nombre de côtés et ainsi de suite. Ceci est ma classe Model
Controller - cela répond à des choses comme appuyer sur des boutons dans la vue et calles ensuite des méthodes dans le modèle pour augmenter et diminuer le nombre de côtés, etc. Ceci est mon contrôleur (surprise!)
Vue - Pour cette question, la vue sera une classe représentant une vue unique, qui dessine le polygone à l'écran.
Ma question est quelle est la meilleure façon pour la classe View d'obtenir des informations relatives à la classe de modèle Polygon? Bien que ce soit trivial pour cet exemple, j'espère que la réponse m'aidera lors de la construction d'applications plus compliquées. Options que j'ai;
1) Transmettez l'instance de la classe Polygon à la vue afin que la vue ait un pointeur. Ensuite, je peux simplement appeler rafraîchissement à tout moment et la vue va savoir quoi faire. C'est ce que je ferais d'habitude mais je cherche à briser l'approche MVC car la vue et le modèle semblent contourner le contrôleur, ce qui me fait penser que ce n'est peut-être pas la meilleure solution.
2) Avoir une méthode redessiner (...) dans la vue, qui prend comme arguments toute nouvelle information reçue. Cela semble propre mais ne serait pas bien à l'échelle je pense.
Tout conseil serait génial. Comme je le dis en général je ferais l'option un, mais aimerait que quelqu'un me dise quelque chose pour améliorer la façon dont je pense à ce sujet ....
Merci!