IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ALM Discussion :

Comment mettre en place MVC sur client lourd/serveur


Sujet :

ALM

  1. #1
    Membre habitué Avatar de touftouf57
    Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2007
    Messages
    362
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 362
    Points : 174
    Points
    174
    Par défaut Comment mettre en place MVC sur client lourd/serveur
    Bonjour à tous,

    Je recherche désespérément comment mettre en place le modèle MVC sur une application client lourds / serveur.

    Faut-il un MVC de chaque coté? Je trouve cette idée étrange puisque du coté serveur, il n'y a pas de vue.

    Si ce n'est pas cela, peut-on considérer le "serveur" comme modèle?

    En fait je dois créer un serveur de jeu de dé.

    Sur le serveur j'aurais un socketServer qui écoutera le réseau et lorsqu'il aura le nombre de joueurs(sockets) attendus il les mettra dans un salon pour qu'ils jouent ensemble.
    Ce salon lancera d'autres threads. Pour chaque client un thread de communication sera lancé. Et un thread de gestion de partie.

    Maintenant coté client
    Le joueur devra saisir son pseudo, définir la somme qui veut jouer durant la partie. Je précise qu'une Partie est composée de plusieurs JetDeDes. Mais il y aura aussi le choix du serveur( D6,2D6,D10,2D10,2D20..)[Pour ceux qui ne savent pas un D6 est un dé à 6 faces] J'aurais donc plusieurs serveur de jeu de dé.
    C'est la que je me casse la tête, est-ce que cette liste de serveur fait partie du modèle?

    J'ai bien saisi que à chaque état du diagramme d'états devrait correspondre un contrôleur. L'application sera donc un enchainement de contrôleurs.
    Donc au début je serais à l'état "EnConnection" ou le modèle sera une classe regroupant
    • la liste des serveurs
    • le pseudo (="")
    • le porte monnaie pour la partie (=0)


    Et à l'état "EnJeu", le modèle sera sur la Partie coté serveur.

    Est-ce que cela semble correct? Ou ai-je tout faux.

    Merci par avance

  2. #2
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2009
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 97
    Points : 307
    Points
    307
    Par défaut
    Il ne peut pas avoir de MVC du cote du serveur vu qu'il s'occupe uniquement de gérer des connexions. Sur ton serveur on aurait plus une couche de service, une couche d'accès aux données et la couche métier.

    Le MVC est utile quand il y a une couche de présentation. Donc seul ton client lourd sera concerné par ce pattern

  3. #3
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2005
    Messages : 241
    Points : 399
    Points
    399
    Par défaut
    Bonjour,

    pour ma part, je pense que ton serveur constitue ton implémentation du Modèle.
    Ton client lourd gèrerait alors la partie Vue/Contrôleur. Néanmoins, côté client lourd, je créerai les stubs de modèles ( en appliquant le design pattern Proxy ).

    Pourquoi passer par un niveau Socket, et pas par RMI, pour les appels au serveur ?

    Pour les questions d'implémentations, de déploiement, etc, je n'ai pas l'impression que tout ça soit clair. Si j'ai bien saisi, l'utilisateur choisit son "serveur de jet de dé" ( qui défini les règles de jeu alors ), défini son pseudo, défini la somme à jouer, et rejoint un salon?

    Sébastien

  4. #4
    Membre du Club Avatar de dida.ratsimba
    Homme Profil pro
    Expert technique et coordinateur d'équipe de production (JAVA / Progress)
    Inscrit en
    Août 2008
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Expert technique et coordinateur d'équipe de production (JAVA / Progress)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 48
    Points : 56
    Points
    56
    Par défaut patterns
    bonjour,
    MVC doit s'appliquer lorsqu'on doit s'occuper de la couche présentation, et l'accès aux couches inférieures doit obligatoirement passer par le contrôleur qui joue le rôle de chef d'orchestre . Un pattern qui pourrait être utilisé au niveau de la couche métier et la couche DAO est l'adapter pattern.

Discussions similaires

  1. Comment mettre en place l'Authentication sur un Proxy Java
    Par urbanoll2 dans le forum Sécurité
    Réponses: 0
    Dernier message: 16/10/2010, 18h28
  2. [MySQL] Comment mettre en place un système de commentaires
    Par mickdu90 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 19/04/2006, 10h48
  3. [Timer] Comment mettre en place un genre de timer ?
    Par freddyboy dans le forum MFC
    Réponses: 6
    Dernier message: 04/08/2005, 10h50
  4. Réponses: 5
    Dernier message: 28/07/2004, 11h39
  5. Comment mettre en place une structure 3 tiers.
    Par WOLO Laurent dans le forum Débats sur le développement - Le Best Of
    Réponses: 13
    Dernier message: 27/07/2003, 22h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo