Я написал много приложений для iOS, которые взаимодействовали с серверной частью. Практически каждый раз я использовал HTTP-кеш для кеширования запросов и анализа данных ответа (JSON) на объекты Objective-C. В этом новом проекте мне интересно, имеет ли смысл подход Core Data.
Вот что я подумал:
Клиент iOS делает запрос к серверу и анализирует объекты из моделей JSON в модели CoreData.
Каждый раз, когда мне нужен новый объект, я анализирую CoreData вместо того, чтобы напрямую получать данные от сервера, чтобы узнать, сделал ли я этот запрос. Если этот объект существует и срок его действия не истек, я использую полученный объект.
Однако, если объект не существует или срок его действия истек (здесь будет применяться некоторая логика кеширования), 1. Избегайте ненужных запросов к серверной части. 2. Разрешите полную поддержку просмотра в автономном режиме (вы все еще можете выполнять реляционные запросы с помощью СУБД DataCore).
Теперь вот мой вопрос к SO Gods: