Cherche une petite explication sur le mvc

keviin55keviin55 Membre
01:53 modifié dans Apple Developer Programs #1
Salut tout le monde ,
j'ai lu des tonnes de truc sur le mvc , je l'ai lu en cours ... Mais dans mon cas je comprend pas :/ J'ai créer une application iphone qui communique avec un sservice web RESTful . La j'ai terminer l'application et je veut savoir si j'ai vraiment appliquer le MVC . Je n'arrive pas à  trouver quel sont les classe modèle , j'ai que des controlleurs :/ après reflexion je me suis dit que le model c'est petre le service web non ? Je vous explique encore ce que j'ai fait , par exemple l'utilisateur entre le numéro du vole dans un UITextField , il entre rechercher , ça c'est une classe checkStatusController , une fois cliquer , la méthode cliquer crée une instance de la classe getStatusController , qui crée un lien de se genre "http://localhost:8080/RESTfulwebservice/getStutus/etLeNumeroDuVoleIci " et fait appel à  une méthode de la classe ASIHTTRrequest ( c'est une librairie qui gère les requètes http ...) qui contactle le service web en mode asynchrone (dans l'arrière plan ) une fois terminer ell envoi le résultat XML en NSSTRING à  ça classe Delegate qui à  lancer la méthode asynchrone ,  getStatusController, qui parse le résultat et créer un objet de la classe Status .Cette dernière ne contient que des attribut (numéro du vol, état du statut ...) après  getStatusController  rempli une UITableView à  partir de cet objet créer .

J'espère que vous m'avais compris .Et j'espère que getStatusCotroller n'est ne joue pas le rolè d'un modèle et d'un controlleur ... :/ Help svp

Réponses

  • CeetixCeetix Membre
    mai 2011 modifié #2
    C'est bourré de fautes d'orthographes, essaie quand même de t'appliquer c'est franchement douloureux de te lire.

    Ton modèle ici c'est la base de donnée hébergée sur ton serveur.
    Le contrôleur c'est lui qui va requêter ta base de donnée et traiter la réponse pour ensuite passer les infos à  ta vue.

    Donc tu peux avoir genre une classe héritant de NSObject qui va s'occuper de tout ce qui est téléchargé.
    Ensuite tu avertis ton ViewController qui lui va se charger de refresh les données (par exemple un UITableView).

    Tu peux aussi avec un modèle interne à  ton application (Core Data par exemple) que ton controlleur se charge d'updater.

    En gros ta vue ne communique pas avec ton modèle.
  • keviin55keviin55 Membre
    01:53 modifié #3
    merci beaucoup et désoler pour les fautes , je les corrigerais . Si non alors les classes comme Statut qui ont juste des attributs c'est quoi ? c'est pas des contrôleurs parce qu'ils sont pas lié à  la vue . C'est des models aussi ?
  • laudemalaudema Membre
    01:53 modifié #4
    dans 1306523177:

    merci beaucoup et désolér pour les fautes , je les corrigerais.

    Si tu commençais maintenant ça ne serait probablement pas plus mal  :(
    Mais bon, on voit toujours les fautes des autres jamais les siennes ..
    Il y a d'autres conventions que tu ne respecte pas: les noms de classe sont capitalisés avec une majuscule en premier caractère et le reste en minuscule (sauf la première lettre des mots qui font le nom de la classe). Ainsi on écrit la classe getStatusController GetStatusController sinon on croà®t à  une variable d'instance...

    dans 1306523177:

    Si non alors les classes comme Statut qui ont juste des attributs c'est quoi ? c'est pas des contrôleurs parce qu'ils sont pas lié à  la vue . C'est des models aussi ?

    S'il n'a que des attributs ça ne saurait être un contrôleur, qui répond à  des actions et des événements , ni une vue qui affiche les attributs. Donc ...
    Par contre je ne suis pas sûr de moi pour affirmer qu'un modèle peut contenir des méthodes qui le modifient. Spontanément je dirais que oui parce que c'est ce que je fais.. Parfois j'ajoute un "Manager" (gestionnaire) si le modèle a des attributs dépendants d'autres classes.
  • keviin55keviin55 Membre
    01:53 modifié #5
    Si tu commençais maintenant ça ne serait probablement pas plus mal

    Je doit présenter mon diagramme de classe demain , je bosse comme un dingue  :'(

    Merci beaucoup . La dernière petite question :) es que le app Delegate entre dans le diagramme de classe ? et les vues je les mets ? merci 
  • laudemalaudema Membre
    01:53 modifié #6
    dans 1306531103:

    Je doit présenter mon diagramme de classe demain , je bosse comme un dingue  :'(

    A mon humble avis tu t'y es pris trop tard. J'en ai un comme toi à  la maison...
    Et tu n'es pas tombé sur le bon cheval car je ne suis qu'un autodidacte sans notion aucune de ce que tu dois remettre à  tes profs..
    Si c'est pour un devoir ça n'est pas à  nous de le faire à  ta place: si tu l'avais déjà  fait, même mauvais, tu aurais pu le présenter et on l' aurait peut être corrigé mais là  on dirait que tu arrives avec le brouillon de tes idées en vrac et tu nous demandes de le trier et le mettre au clair avant demain !
    Good luck  :(
    Sinon la réponse à  ta dernière question est probablement contenue dans l'énoncé de ton problème: tu dois mettre dans ton diagramme les classes qu'on te demande d'y mettre !
    hth
Connectez-vous ou Inscrivez-vous pour répondre.