Структура данных iOS для приложения, использующего веб-сервис

#ios #core-data #swift

#iOS #ядро-данные #swift

Вопрос:

Я создаю приложение, которому требуется Интернет для просмотра контента (в основном изображений с текстом). Пользователь также может добавлять содержимое в избранное. У меня есть API и для iOS (Swift iOS 8. Я собираюсь использовать AFNetworking для получения данных. Однако, должен ли я хранить результаты в словаре моделей или в Core Data для приложения, используемого в реальном мире? Я прочитал много руководств о том, как реализовать каждое из них, но я не знаю, какое использовать. Любые предложения будут оценены.

Некоторые дополнительные примечания могут быть полезны в вашем ответе:

  1. Когда пользователь использует приложение в первый раз, приложение должно загрузить и отобразить 20-30 записей, но это должно быть сделано очень быстро. Вход в систему не требуется.

  2. Пользователь может прокручивать, чтобы увидеть больше контента, но контент должен быть извлечен быстро, может быть, некоторые даже предварительно извлечены?

  3. Когда пользователь использует приложение впоследствии, и если он / она ранее входил в систему, приложение должно знать, кто этот пользователь.

  4. Пользователь может получить доступ к своим избранным в приложении, но он также может просматривать избранное содержимое на веб-сайте, поэтому данные должны быть синхронизированы.

Комментарии:

1. Этот вопрос, похоже, не по теме, потому что Stack Overflow не является сайтом «разработайте мое приложение для меня».

2. Мне нравится вопрос, поскольку в нем основное внимание уделяется передовой практике. В вопросе достаточно четко продумано, что OP не запрашивает разработку своего приложения, а является техническим вопросом, который довольно сфокусирован. Вопрос и ответ на данный момент были полезны для меня.

Ответ №1:

Я бы предложил использовать Core Data, потому что он быстрый, основанный на объектах и простой в обращении, но немного сложный в использовании. У вас может быть лучший контроль доступа к вашим данным, даже когда вы загружаете данные по частям, вы также можете сохранять и извлекать их позже на основе идентификаторов, и с их помощью вы можете установить такие параметры, как избранное и статус входа в систему или статус последнего входа, что является лучшим способом, чем использование plist.