Создание одного объекта JSON Parser / Network - PullRequest
1 голос
/ 02 июля 2010

То, что я ищу, - это точка в правильном направлении, помогающая мне создать лучшую концепцию того, что мне нужно делать в рамках дизайна моего приложения.

То, что я пытаюсь сделать, - это иметькласс, который будет выполнять сетевые запросы, IE: getUser, getTimeline, getLocation.Как только данные были получены через -(void)connectionDidFinishLoading:, имейте JSON (для моего приложения я использую TouchJSON), чтобы проанализировать данные и с этими данными вернуть массив или объект этого.

Все вышеперечисленное я могуно я считаю, что мне нужно делать это в каждом создаваемом классе, что приводит к большому количеству кода и избыточному коду.

По сути, если я хочу сделать этот подход сейчас, это грубое прохождениечто происходит:

Так, например:

  1. [Вид 1] -> Объект NetworkActivity -> getUser
  2. [NetworkActivity] -> getUser -> makeConnection ->parseObject -> возвращаемый объект
  3. [View 1] -> метод getUser теперь завершен и является пустым, что, в свою очередь, теперь означает, что мне нечего показывать

Теперь я понимаю, что, посколькуЯ использую асинхронный запрос, вот почему это происходит, однако то, что я хочу, это способ реализовать этот подход без необходимости создавать несколько классов, которые в основном делают одно и то же.Я не ищу «ответ», просто подталкивание или указание в правильном направлении чего-то, что я могу прочитать или попробовать, чтобы лучше понять это.

Также извините, если это было ввсе сбивало с толку, я пытался описать это как можно лучше, но, пожалуйста, поймите, я все это путаю!

1 Ответ

2 голосов
/ 02 июля 2010

Взгляните на MGTwitterEngine Мэтта Джеммелла, который является отличным примером того, как разработать клиент для конкретного API, Twitter. Если вы знаете, что сервер обслуживает веб-сервисы RESTful, вы также можете взглянуть на проект iPhone on Rails , в котором реализован универсальный контроллер. Вы предоставляете модель, а контроллер заботится о REST.

...