-
MVC Swing [débutant]
Bonjour,
Je débute sous Swing et je suis en train de concevoir une application MVC (sans utiliser aucun framework afin de mieux comprendre le pattern MVC) et j'ai quelques questions sur le modèle.
Comment dois-je concevoir mon modèle sachant qu'il risque d'être assez conséquent avec un certain nombre de classes? Disons que je modélise une boutique. Dois-je avoir une classe BoutiqueModele qui contient toutes les classes comme Inventaire, Administrateur, Clients en tant que variable d'instance de cette classe? Ou dois-je découper mon modèle en différentes parties et par conséquent avoir un certain nombre de classes "top-level" isolées les unes des autres comme InventaireModele, ClientsModele etc. ?
Tous les examples que j'ai vu jusqu'à présent présentaient un modèle minimaliste (voir http://baptiste-wicht.developpez.com...onception/mvc/) quoique très intéressant et je n'ai donc pas trouvé réponse à ma question.
Toute suggestion ou commentaire seront les bienvenus,
Merci,
Julien.
-
Je ne pense pas que la question soit très importante ; perso j'aurais tendance à faire un BoutiqueModele qui rassemble tout, je trouve ça pratique d'avoir un parrallèle avec le monde concret.
Ce n'est pas très important parce que les objets ont une forme d'indépendance ; une fois que tu as un objet InventaireModele, par ex., tu peux le traiter indepandemment de son environnement, sans même que le BoutiqueModele le sache.
Perso je suis assez favorable à une indépendance maxi des objets, sous réserve que chacun sache se débrouiller honnêtement selon son état et ses valeurs.
La BoutiqueModele est un niveau ou une cohérence peut se concrétiser, s'exprimer.
Et le mieux c'est encore d'essayer l'une et l'autre approche !
-
Dernière question
Merci bcp pour ta réponse,
Je pense que je vais opter pour une classe BoutiqueModele comme tu me l'as suggéré.
J'ai cependant une dernière question concernant le modèle: comment faire pour gérer l'inventaire et les clients sachant qu'ils sont dans une base de données et que la taille de la bd peut devenir assez conséquente? Pour info j'utilise JPA + hibernate. Je suppose qu'il serait ridicule de charger tout l'inventaire en mémoire. Mais alors comment faire??
a+
J.
-
D'abord il y a des techniques qui choisissent de tout charger en mémoire : tu peux avoir des RAM plus grosses que des disques durs de nos jours, surtout sur les serveurs.
Ensuite, si tu ne veux pas, il faut voir qu'il est rare que tu aies besoin de tout l'inventaire. Même lorsqu'il s'agit de les afficher dans une JTable, celle-ci ne te demandera que les quelques colonnes réellement affichées. Donc garde ton hibernate, c'est ton meilleur ami.
-
merci pour tous ces détails.
J.