Пишу программу - читалку. Главная страница:
Страницы:
Первая - главная.
Вторая - избранное.
Третье - глобальный поиск (через сервер).
На главной странице я показываю популярные (отдает тоже сервер) и недавние(слежу за пользователем).
Проблема состоит в том, что, я не знаю, как правильно построить модель для хранения данных о книг, так как:
1) у меня на главной странице два связанных (по смыслу uicollectionview), так как если пользователь выбирает в PopularCollectionview книгу, и делает ее избранной, то я хочу, чтобы и RecentCollectionView обновлялся (если в нем есть такая Cell(Книга), и чтобы она тоже была со звездочкой). Как это сделать?:
2) я оперирую следующими массивами: allBooks(если пользователь просмотрит книгу с глобального поиска, она добавится в этот массив, так как как минимум в недавних она должна отобразиться), recentBooks (добавляем недавние), favoriteBooks(избранные), popularBooks (получаем с сервера). Возможно сделать одну entity в Core Data - allBooks. В ней будут следующие дополнительные переменные:
var isFavorite:Bool = false
var isRecent:Bool = false
Но как тогда быть с popularBooks, которые я гружу с сервера? Вписывать их в allBooks? Тогда элементы могут дублироваться.
Как построить модель? Помогите, пожалуйста! Возможно у кого-то уже был опыт построения таких программ.
P.S.
Что лучше использовать Realm или Core Data?