Modele MVC java

maxam49 -  
rodoplop Messages postés 77 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour tout le monde,

Alors je vous expose mon problème. Je suis actuellement en 1ere année de DUT informatique et pour cette fin d'année nous avons un projet à réaliser. Nous devons coder une aplication messagerie pour PDA. Le tout doit être codé suivant le modele MVC. Cependant nous avons seulement eu un cours là-dessus et j'avoue galérer un peu. Je fais beaucoup de recherche sur internet me je ne trouve pas de solution à mon problème.

Donc j'ai réalisé mon interface graphique dans le package view. Ce que je cherche c'est où écrire les écouteurs et les class de réaction pour correspondre au modèle MVC. Par exemple afficher une fenêtre lors d'un clique sur un bouton. J'espere que c'est claire. N'hésitez pas à me demander des informations supplémentaires.

Merci d'avance pour vos réponses.

Bonne soirée

A voir également:

3 réponses

rodoplop Messages postés 77 Date d'inscription   Statut Membre Dernière intervention   12
 
Pour faire simple, le modèle MVC sépare la couche métier de ton application la vue et les contrôleur.

Cela te permet d'avoir d'un coté le coeur de ton application (la logique, l'interaction avec une base de donnée, des fichiers, ...) Cela est appelé le Modèle.

Ensuite tu as la Vue, elle affiche toute sorte d'information à l'utilisateur. (titre, boutons, textes, ...)

Pour finir tu as le contrôleur qui va faire le lien entre ta vue et le modèle.

Par exemple, une application qui créé un formulaire PDF. Tu va avoir :

La vue : une fenêtre contenant un texte d'explication et un bouton "télécharger le formulaire"

Le contrôleur : l'outils qui te permet de déclencher une action lorsqu'on clique sur le bouton

Le modèle : la fonction qui va permettre de créer le formulaire et de proposer le téléchargement à l'utilisateur.

donc l'utilisateur voit la vue. Quand il clique sur le bouton, cela déclenche une action sur le contrôleur. Le contrôleur appellera alors la méthode du modèle permettant de réaliser l'action.
Le contrôleur peut également mettre à jour la vue.

Comme dans notre exemple, le modèle exécute la fonction de téléchargement. Lorsque la fonction se termine, on peut "prévenir" le contrôleur pour qu'il mette à jour la vue pour afficher un message à l'utilisateur "téléchargement terminé".


Le modèle MVC est une bonne chose pour ne pas se mélanger les pinceaux dans ton code. Tu sépare ainsi bien les différentes couche de ton programme. Cela permet d'avoir une réutilisation du code plus facile (tu peut changer ton interface graphique sans toucher à un bout du modèle).

Maintenant on retrouve souvent des exemples sur des modèles M-VC où la vue et le contrôleur sont gérés par une même classe. Mais cela ne correspond pas à ce que tu veux.
0
maxam49 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Tout d'abord je te remercie d'avoir pris le temps de me répondre. Après tes explications cela me parait beaucoup plus claire effectivement.

Donc concrètement si je veux réagir au clique d'un bouton:
- l'écouteur sera dans le view : this.monBouton.addActionListener ( new Ecouteur() )

- la classe de réaction sera dans le controleur : public class Ecouteur implements ActionListener {

- et dans la class de réaction on appelera des méthode du modèle pour agir sur les données


C'est bien ça?

Merci beaucoup!
0
rodoplop Messages postés 77 Date d'inscription   Statut Membre Dernière intervention   12
 
Tu as bien saisis, ta vue possède des éléments d'action sur lesquels tu poses des Listener.
Au déclenchement de l'évènement, le listener appellera la méthode de ton modèle .

En retour, ton modèle peut informer le contrôleur de la fin de l'action pour mettre à jour la vue.
0