J'ai donc essayé de concevoir une manière propre de saisir des données pour mes modèles dans l'iPhone terrestre. Toutes les données pour mon application proviennent des API JSON. Donc maintenant, quand un VC a besoin de certains modèles, il fait l'appel JSON lui-même (asynch) et quand il reçoit les données, il construit les modèles. Cela fonctionne, mais j'essaie de penser à une méthode plus propre par laquelle les DAO récupèrent les informations pour moi et retournent les modèles, d'une manière asynchrone.Conception de DAO autour d'une API JSON pour le développement iPhone
Ma pensée initiale est de construire un protocole pour mes DAO, de sorte que le VC instancie un DAO et se fasse le délégué. Lorsque vous demandiez des données [DAOinstance getAllUsers], DAO effectuait toutes les tâches de requête réseau, puis, lorsqu'il disposait des données, appelait une méthode sur son délégué (le VC) pour transmettre les données. Donc je pense que c'est une solution cool, mais je me suis rendu compte que si j'avais besoin d'utiliser le même DAO à différentes fins dans le même VC, ma méthode déléguée devrait se connecter en fonction de l'instance DAO qui a initié la requête. Donc, ma deuxième pensée a été de pouvoir passer des sélecteurs 'handler' à l'objet DAO par des patterns javascript typiques. Donc, au lieu d'un protocole officiel, je dirais quelque chose comme [DAOinstance getAllUsersWithSelector: "TheHandlerFunctionOnMyVC:"] Ensuite, lorsque le DAO a terminé ses activités réseau, il appelle le sélecteur passé sur le VC, et transmet les données.
Alors est-ce que je me dirige dans la mauvaise direction tout à fait ici? On dirait que c'est peut-être un bon moyen d'y aller.
Tous les pointeurs ou articles sur la conception de ce type de couche de données seraient doux.
Merci! Bob