Веб-служба отправляет данные клиенту iOS, а клиент показывает данные с помощью UITableView.
Данные обычно представляют собой статью встроенной доски, текстовый список. Отправляется с веб-сервиса в формате json. (иногда XML)
Его не нужно обновлять в режиме реального времени, но я не хочу блокировать пользовательский интерфейс из-за загрузки веб-службы.
Есть много способов реализовать это, каким способом вы подходите? 1. или 2.?
UITableViewController обрабатывает объект json.
Простой способ, но он может быть сложен для кодирования.
Использовать CoreData в качестве локальной базы данных.
Существует локальный репозиторий для статей, когда данные json поступают из веб-сервиса, он обновляет локальный репозиторий CoreData. (загрузка асинхронного веб-сервиса)
и UITableViewController <> обрабатывают обновление локального репозитория CoreData и обновляют UITableView с анимацией.
Я думаю, что второй способ лучше реализовать без кода спагетии, но я боюсь, что есть другие проблемы с производительностью, или это не совсем глупый код?
Друзья, как вы обычно реализуете список данных из веб-сервиса?
Больше комментариев:
Я нашел пример SeismicXML от Apple SDK, это хорошо реализованный пример способа 1.
но я думаю, что это можно легко реализовать, используя CoreData в качестве локального хранилища.
Получить данные из веб-службы (асинхронно) и поместить данные в CoreData
UITableViewController обновляет UITableView в методах NSFetchedResultsControllerDelegate.
Как вы относитесь к этой стратегии?