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

Langage Java Discussion :

Implémentation du MVC


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif Avatar de dotEden
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 66
    Par défaut Implémentation du MVC
    Bonsoir,

    Je viens ici vous exposez quelques questions existentielles sur l'implémentation du pattern MVC, commençons donc :

    • Pour le modèle :
      • Pour la couche modèle, est-il préférable de mettre la liste des objets d'une entité directement dans la classe de cette dernière dans une ArrayList définie en static ou alors dans une classe du genre DataModel qui aurait pour attributs un ArrayList pour chaque entité ?

      • Pour le chargement des données, mon objectif et de pouvoir hydrater mon model par deux sources distincts : par fichier local et par database, pour le local, je n'ai pas trop de souci, mais pour la database, je voulais savoir s'il y aurait des choses à prendre en compte pour la sécurité (ce n'est pas une application J2EE), en outre je sais qu'il est plutôt facile de décompiler du Java, alors j'aimerais de ce fait pouvoir rendre impossible la lecture des identifiants de connexion à ma database.


    • Pour le controller :
      • Je ne comprend pas trop pourquoi tous les projets que je vois créés une classe abstract dont tous les controllers héritent ? Pour ma part, mes controllers sont pour la plupart liés à une vue bien spécifique.


    • Pour la vue :
      • Pourquoi je ne vois jamais le pattern Observer/Observable implémenté à l'aide de l'import java.util.Observable et java.util.Observer ? Ces classes ne sont-elles pas intéressantes ? J'ai toujours fais avec jusqu'ici, et j'avoue commencer à m'inquiéter de mon niveau vu le nombre de fois où j'ai l'implémentation du pattern à l'aide des Listeners .


    • Last but not least :
      • J'aimerais rendre l'application multilingue (Français/Anglais), que choisir comme caractère(s) de saut de ligne pour mes fichiers de traduction pour une compatibilité maximum Windows / Mac OS (apparemment plus Mac que Windows d'ailleurs) : CRLF ou LF ?

      • Autrement quel type de fichier est à choisir ? .ini ? Aucune extension ? Enfin bref la question n'est pas tellement importante.


    En l'attente de vos réponses, et en vous remerciant d'avance de votre aide et expertise.


    Cordialement,

    --
    .eden

  2. #2
    Membre Expert
    Avatar de professeur shadoko
    Homme Profil pro
    retraité nostalgique Java SE
    Inscrit en
    Juillet 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : retraité nostalgique Java SE

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 257
    Par défaut
    Il y a des myriades de manières d'implanter du MVC: chacune dépend de contraintes particulières.

    perso j'ai souvent ceci:
    - le controleur est rarement une classe abstraite:
    il crée les implantation des modèles et des vues
    il implante toujours une interface connue de la vue (pour que celle-ci le prévienne) et parfois une interface connue du modèle (si on veut que tout soit centralisé)

    -le modèle est bien souvent une classe abstraite qui a connaissance
    d'une interface qui va lui servir à prévenir le "veilleur" (listener) de modifications; il a aussi des méthodes d'interrogation de son état.

    - la vue connait le controleur par une interface (pour le prévenir d'actions)
    et doit être prévenue de modifications du modèle et connaitre le modèle pour l'interroger.

    donc de nombreuses implantations possible mais il faut veiller à ne pas faire des références croisées entre classes (importance des interfaces)

  3. #3
    Membre actif Avatar de dotEden
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 66
    Par défaut
    Citation Envoyé par professeur shadoko Voir le message
    Il y a des myriades de manières d'implanter du MVC: chacune dépend de contraintes particulières.

    perso j'ai souvent ceci:
    - le controleur est rarement une classe abstraite:
    il crée les implantation des modèles et des vues
    il implante toujours une interface connue de la vue (pour que celle-ci le prévienne) et parfois une interface connue du modèle (si on veut que tout soit centralisé)

    -le modèle est bien souvent une classe abstraite qui a connaissance
    d'une interface qui va lui servir à prévenir le "veilleur" (listener) de modifications; il a aussi des méthodes d'interrogation de son état.

    - la vue connait le controleur par une interface (pour le prévenir d'actions)
    et doit être prévenue de modifications du modèle et connaitre le modèle pour l'interroger.

    donc de nombreuses implantations possible mais il faut veiller à ne pas faire des références croisées entre classes (importance des interfaces)
    Je sais comment implémenter MVC, et je connais également le patter Observer/Observable, je voulais surtout avoir des réponses à mes questions.

    Dans tous les cas, je te remercie pour ton aide.

    Cordialement

  4. #4
    Membre Expert
    Avatar de polymorphisme
    Homme Profil pro
    Publishing
    Inscrit en
    Octobre 2009
    Messages
    1 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Publishing
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1 460
    Par défaut
    Bonjour,

    je voulais savoir s'il y aurait des choses à prendre en compte pour la sécurité (ce n'est pas une application J2EE)
    Dans ce cas, à priori, ce n'est pas dans ce forum que tu trouvera la réponse.

    Je ne comprend pas trop pourquoi tous les projets que je vois créés une classe abstract dont tous les controllers héritent ?
    C'est pour faciliter l'implémentation des controleurs. La classe abstraite est comme une description et les contrôleurs exécutent.

    Pourquoi je ne vois jamais le pattern Observer/Observable implémenté à l'aide de l'import java.util.Observable et java.util.Observer ?
    Certaines classes de Java utilisent ce motif en important java.util. Cependant, comme pour le motif MVC, il existe plusieurs variantes, c'est tout.

    J'aimerais rendre l'application multilingue (Français/Anglais), que choisir comme caractère(s) de saut de ligne pour mes fichiers de traduction pour une compatibilité maximum Windows / Mac OS (apparemment plus Mac que Windows d'ailleurs) : CRLF ou LF ?
    Tu aborde deux sujets qui semblent proches mais sont différents. Une application multilingue met en oeuvre l'internationalisation (en abrégé i18n). Tandis que le choix des sauts de ligne relève de la portabilité de ton application.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Méthode implémentation SWT "MVC"
    Par threaded dans le forum SWT/JFace
    Réponses: 5
    Dernier message: 14/04/2011, 13h33
  2. Implémentation de MVC
    Par Oufti dans le forum Windows Forms
    Réponses: 11
    Dernier message: 22/09/2010, 10h47
  3. Implémentation DAO MVC
    Par Hanoni dans le forum Général Java
    Réponses: 4
    Dernier message: 21/09/2009, 08h46
  4. implémentation Pattern MVC
    Par cyberlulu dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 01/11/2008, 16h50
  5. Implémentation du MVC en ASP.NET
    Par rabddoul dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 23/02/2008, 11h21

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