Вопрос по ios – Зачем мне хотеть две или более модели Core Data?

10

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

Мое готовое приложение будет для iPad и еще одна версия для iPhone, у iPad есть 3 основных содержимого, у iPhone есть только одно, которое также есть на iPad, поэтому, изолируя это в другой базовой модели данных, можно сохранить изменения этой модели по всему мои два приложения будут проще.

Хотя у меня есть пара сущностей, которые мне понадобятся в обеих, я мог бы просто скопировать их или иметь одну большую модель.

Какие-либо предложения ?

В любом случае, это, конечно, не обычная ситуация, какие другие сценарии могут привести вас к созданию нескольких моделей базовых данных?

Как добавить класс модели mutilple? Harshit Gupta

Ваш Ответ

2   ответа
9

ример, приложение, которое работает как каталог продуктов, может иметь одно хранилище, которое является базой данных продукта, и другое, которое отслеживает избранное пользователя, текущие заказы и историю. Это позволяет относительно легко обновлять базу данных продукта, не затрагивая данные пользователя, и выполнять резервное копирование данных пользователя без необходимости копировать всю базу данных продукта.

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

Update: То, что я написал выше адреса с использованием отдельныхstores, но вы спрашивали об использовании отдельныхmodels, Базовые данные фактически позволят вам определить отдельные модели, а затем объединить их все вместе во время выполнения для использования в одном и том же хранилище (или в нескольких хранилищах). Так что, чтобы было ясно,model определяет сущности и отношения между ними.store это место, где данные фактически сохраняются с использованием схемы, определенной в модели. Вы можете разбить сложную модель на несколько небольших моделей, просто чтобы упростить задачу и помочь в переносе данных при изменении моделей с течением времени, или вы можете использовать несколько моделей и хранить их отдельно, потому что вы планируете использовать разные магазины, которые содержат различные типы данных, как описано выше.

Error: User Rate Limit Exceeded Daniel
Error: User Rate Limit ExceededstoresError: User Rate Limit Exceeded
3

азделите их, вы не сможете использовать многие функции Core Data, такие как отношения (между объектами в хранилище данных) и т. Д. Даже если вы не видите необходимости сейчас, вы можете прийти с идеей добавить в приложение позже, который нуждается в этом.

Вы можете по-прежнему использовать одну и ту же модель данных ядра как для iPad, так и для iPhone, просто игнорируйте части, которые вы не используете iPhone (до тех пор, пока не получите запросы на добавление недостающих частей, что весьма вероятно). Тогда вы будете полностью настроены и уже будете иметь доступные данные.

Только в крайних случаях целесообразно использовать отдельную модель данных, например, если вы собираетесь загружать существующий набор данных, который доступен только для чтения и т. Д. Вы можете отделить набор данных только для чтения от пользовательских настроек / данных и т. Д.

Удачи с приложением!

Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Daniel
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded

Похожие вопросы