Architecture MVC
Résolu
velocity
Messages postés
204
Date d'inscription
Statut
Membre
Dernière intervention
-
ghofraneTunis Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
ghofraneTunis Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai une question à propos l'architecture MVC.
Est-ce que la communication entre les parties Modèle et Controleur ou modèle et Vue peut se faire directement par appel au méthodes des objets du modèle et vice versa ou est ce que ca doit être fait par envoie d'évènement ?
merci pour votre réponse.
j'ai une question à propos l'architecture MVC.
Est-ce que la communication entre les parties Modèle et Controleur ou modèle et Vue peut se faire directement par appel au méthodes des objets du modèle et vice versa ou est ce que ca doit être fait par envoie d'évènement ?
merci pour votre réponse.
A voir également:
- Architecture MVC
- Logiciel architecture gratuit - Télécharger - Architecture & Déco
- Architecture 3d gratuit - Télécharger - Architecture & Déco
- Logiciel de plan de maison : les meilleurs outils gratuits - Guide
- Architecture 3D - Plan 2D - Télécharger - Architecture & Déco
- Envisioneer architecture gratuit - Télécharger - Architecture & Déco
4 réponses
salut ghofraneTunis,
merci pour votre réponse, J'ai enfin compris la solution en lisant l'article de MVC sur wikipédia. En fait comme vous l'avez dit toute modification du modèle doit passer par le controleur donc j'ai dût réorganiser le diagramme de classe pour qu'il respecte cette contrainte et je constate que ca rend le diagramme de séquence plus propre et plus compréhensible.
Pour réponde à vos questions :
1) La classe player représente un joueur avec son nom et ses contrôles, qui sont paramétrables à volontée, elle est consultable par le contrôleur pour connaitre le traitement à générer selon l'évènement reçu (qui est un objet Event) à partir de la vue.
2) GridViewer est un JPanel qui s'occupe de l'affichage d'une grille
merci encore pour votre aide,
merci pour votre réponse, J'ai enfin compris la solution en lisant l'article de MVC sur wikipédia. En fait comme vous l'avez dit toute modification du modèle doit passer par le controleur donc j'ai dût réorganiser le diagramme de classe pour qu'il respecte cette contrainte et je constate que ca rend le diagramme de séquence plus propre et plus compréhensible.
Pour réponde à vos questions :
1) La classe player représente un joueur avec son nom et ses contrôles, qui sont paramétrables à volontée, elle est consultable par le contrôleur pour connaitre le traitement à générer selon l'évènement reçu (qui est un objet Event) à partir de la vue.
2) GridViewer est un JPanel qui s'occupe de l'affichage d'une grille
merci encore pour votre aide,
bonjour mpmp93 ,
merci pour votre réponse, je programme en java sous eclipse sans framework MVC .
J'essaye de réaliser le jeu tetris et j'essaye d'appliquer une architecture mvc comme suit.
Une Classe Grid dans le Modèle
Une Classe GridViewer dans la Vue
Une Classe Timer et une Classe Player dans le Controleur
J'hesite pour faire la communication entre ces différentes classes.
je ne sais pas s'il est correct lorsque je fait appel direct au méthodes de ces classes.
par exemple le Timer fait appelle à la méthode next() de Grid et ensuite Grid fait appelle à la méthode Paint() de GridViewer
Ou alors il faut faire la séparation totale entre ces différentes classes et réaliser la communication par envoit d'evènement et utilisation de différent Listeners.
merci pour votre réponse, je programme en java sous eclipse sans framework MVC .
J'essaye de réaliser le jeu tetris et j'essaye d'appliquer une architecture mvc comme suit.
Une Classe Grid dans le Modèle
Une Classe GridViewer dans la Vue
Une Classe Timer et une Classe Player dans le Controleur
J'hesite pour faire la communication entre ces différentes classes.
je ne sais pas s'il est correct lorsque je fait appel direct au méthodes de ces classes.
par exemple le Timer fait appelle à la méthode next() de Grid et ensuite Grid fait appelle à la méthode Paint() de GridViewer
Ou alors il faut faire la séparation totale entre ces différentes classes et réaliser la communication par envoit d'evènement et utilisation de différent Listeners.
Remarque :
1) Pourquoi tu as mi la classe Player dans le contrôleur : qu'est ce qu'elle fait exactement ?
2) Qu'est ce qu'elle fait la classe GridViewer ?
3) Le contrôleur c'est celui qui fait la coordination entre le modèle et la vue, en gérant les évènements. Le contrôleur n'effectue aucun traitement, ne modifie aucune donnée. Il analyse la requête du client et se contente d'appeler le modèle adéquat et de renvoyer la vue correspondant à la demande.
4) Dans ton cas, la classe Timer, appelle le modèle adéquat ( selon la requête de vue ) et là c'est bon.
1) Pourquoi tu as mi la classe Player dans le contrôleur : qu'est ce qu'elle fait exactement ?
2) Qu'est ce qu'elle fait la classe GridViewer ?
3) Le contrôleur c'est celui qui fait la coordination entre le modèle et la vue, en gérant les évènements. Le contrôleur n'effectue aucun traitement, ne modifie aucune donnée. Il analyse la requête du client et se contente d'appeler le modèle adéquat et de renvoyer la vue correspondant à la demande.
4) Dans ton cas, la classe Timer, appelle le modèle adéquat ( selon la requête de vue ) et là c'est bon.