Architecture des données
Core
Membre
Bonsoir ,
Je vais citer un exemple afin de de vous d'illustrer ma question.
Soit une application qui liste le contenu de CD-ROM et l'affiche dans une fenêtre (NSTableView par exemple)
J'aurais tendance a créer selon le modele MVC, une classe Model (nommé "content") dont l'instance représenterait le contenu d'un CD, une classe View pour gérer l'affichage et une autre Contoler pour gérer les actions utilisateurs.
Jusque la tout va bien, enfin je crois
Maintenant il nous faut gérer plusieurs contenus de CD ROM, donc créer un Array de "content" et plus tard placer dans un fichier
Dans quelle classe convient il de placer ce fameux array ?? plutot dans le model , dans la view ??
Je vais citer un exemple afin de de vous d'illustrer ma question.
Soit une application qui liste le contenu de CD-ROM et l'affiche dans une fenêtre (NSTableView par exemple)
J'aurais tendance a créer selon le modele MVC, une classe Model (nommé "content") dont l'instance représenterait le contenu d'un CD, une classe View pour gérer l'affichage et une autre Contoler pour gérer les actions utilisateurs.
Jusque la tout va bien, enfin je crois
Maintenant il nous faut gérer plusieurs contenus de CD ROM, donc créer un Array de "content" et plus tard placer dans un fichier
Dans quelle classe convient il de placer ce fameux array ?? plutot dans le model , dans la view ??
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
C'est ce que j'ai fait "instinctivement" mais après avoir lu une doc Apple sur le MVC, j'avais quelques doutes....
Merci bien !!
D'un point du vue strictement objet, il faudrait normalement créer la classe "container" des objets "contents". Cette approche permet ainsi de gérer une collection de contenu de CD, de gérer les divers aspects liés au stockage de ces contenus vers une base/fichier, et de créer des "enumerator" afin de parcourir/parser le contenu.
.
ou y a t-il d'autre subtilités ou astuces à connaitre sur ce type de classe ?
Oui, c'est cela (si tu désires utiliser un NSArray pour le stockage "physique" des contents en mémoire).
Tu pourrais remplacer NSArray par une autre classe, ou une autre méthode de stockage (un tableau C dynamique par exemple) sans que le monde exterieur (ton contrôleur) ne soit affecté outre mesure, car c'est le "container" qui masque ça.
.