Bonjour,
Dans le cadre de mes cours (du soir), j'ai proposé a mon prof de pousser un exercice un peu plus loin que ce qui était demandé, et d'en faire une "vrai" application en y mettant tout ce que j'avais appris juqu'à maintenant.
C'est la première fois que je n'ai pas de consigne pour réaliser mon projet et ou je dois commencer depuis le début, notamment la phase de design.
Je me suis lancé dans la réalisation d'un programme qui imite le fonctionnement d'une application de messagerie (type Msn Messenger, ou SMS) en essayant de respecter le modèle MVC, le tout via des listes chainée (User -> contact -> msg) dans le modèle.
Donc, je suis parti sur l'idée de considérer mon main comme un prg externe qui fait appel a une sorte d'API que mon controller fourni au main pour exécuter certaines fonctions de base : ajout, effacer, sélectionner, afficher (des user, contact ou msg).
La ou je j'ai un peu de mal, c'est concernant la gestion des adresses de pointeurs qui vont contenir les listes chainées.
Par exemple, j'appelle le module de gestion de la bdd (sous forme de liste chainée) via la controler. Le modèle va effectuer les opérations demandée sur la bdd, et fournir un résultat.
Mais ou et comment est ce que je stocke les variables contenant les adresses de mes listes chainées (bdd) d'un appel a l'autre??
Est ce que je dois déclarer des variables static dans les fonctions du modèle, ou est ce que je dois les renvoyer dans le controller?? Et les stocker dans, par ex, une structure et renvoyé a chaque fois au modèle l'adresse de la liste?!
De même, j'ai un module "core" qui contiendra un module de gestion des erreurs qui seront stockée dans une liste chainée.. une fois une erreur ajoutée a la liste.. ou est ce que je "stocke" l'adresse de la liste??
J'avoue que je suis vraiment confus par cette notion de stockage d'adresse..
J'ai fait un schéma pour m'aider a y voir clair dans la structure de mon prg.
C'est ma première tentative de réaliser un prg complet, donc soyez conciliant
https://www.lucidchart.com/invitatio...4-6f2e7040c216
Partager