Citation:
Dans ce cas, faudrait-il que je créée une classe spécialement conçu pour stocker ma liste de donnée
Je n'ai pas saisi d'où venaient les données de départ.
C'est le contrôleur qui les reçoit directement (comment la vue y a-t-elle accès dans ce cas?)?
Elles sont envoyées au contrôleur par la vue?
Vous n'êtes pas forcément obligé de stocker la liste de données dans le modèle.
Elles ne seront juste pas accessibles depuis une autre vue.
Le principe est que si votre vue souhaite afficher quelque chose provenant du modèle, ce quelque chose doit être stocké dans le modèle.
Typiquement les données du Chart doivent être stockées dans le modèle puisque c'est lui qui les génère.
Citation:
effectuer les opérations nécessaire dessus, et que se soit elle qui exécute l'analyse ?
Oui. Les opérations sur les données sont clairement à effectuer dans le modèle, de même que l'exécution de l'analyse.
En revanche attention à ne pas créer une classe qui va tout faire.
Une classe s'occupe du stockage, une classe s'occupe de l'analyse,
et idéalement, une classe s'occupe de traiter les demandes venant du contrôleur en effectuant les différents traitement nécessaires.
Citation:
J'obtiendrai donc une classe entre le contrôleur et mon module d'analyse. Le contrôleur appellerai les méthodes de cette classe une a une.
Voir mon précédent commentaire. A vous de voir le niveau de granularité maitrisé par le contrôleur.
Est-ce qu'il se contente d'envoyer une requête globale au modèle, ou plusieurs requêtes spécialisées.
Je suis plus partisan de spécialiser le moins possible le contrôleur pour diminuer les dépendances,
mais cela implique souvent de créer une classe supplémentaire dans le modèle, uniquement dédiée à ces traitements.
Citation:
Derriere je me retrouverai toujours sans implémentation de pattern Observer... car je ne vois pas trop comment l'implémenter pour mon cas...
car ma vue affiche un coup une liste de donnée, un coup un objet de mon module d'analyse
Le fait que l'IHM affiche un coup des données un coup d'autres n'est pas gênant.
Avec le pattern Observer, la vue reçoit des indications de changements, elle ne prend en compte que celles qui l'intéresse.
Typiquement pour le Chart, je suppose qu'actuellement il est affiché lorsque la réponse est reçue.
Avec le pattern Observer, le contrôleur ne va pas renvoyer de résultat (au mieux un acquittement de requête envoyée).
Une fois les données analysées, le modèle va indiquer à la vue que de nouvelles données de chart sont disponibles.
La vue peut alors "switcher" sur l'affichage chart et demander les données de chart.
Je pense que la logique derrière le "un coup - un coup" n'a pas à être modifiée.
Simplement les données à afficher arriveront d'une façon différente.