Это скорее философский вопрос о дизайнерских решениях Apple, чем вопрос о базовых данных.
Почему в мире полезно иметь модельную систему, которую так сложно предварительно заселить? Каковы преимущества? Я знаю, что ваша программа может сгенерировать файл sqlite и отредактировать его вручную, но, насколько я могу судить, вы не сможете этого сделать, если у вас вообще есть какие-либо отношения.
Я сравниваю это с парадигмой MVC, используемой в рельсах, которая, кажется, имеет больше смысла. Модели в рельсах обеспечивают уровень абстракции, аналогичный базовым данным (из того, что я могу сказать), но они также позволяют вам вводить все, что вы хотите, в свою базу данных вручную (или через скрипт).
Проблема, с которой я столкнулся с Core Data, заключается в том, что, поскольку rails, кажется, доказывает (мне), что вы можете получить отличную абстракцию модели из базы данных, сохранив при этом несколько удобных методов для ее предварительного заполнения, какие возможные преимущества делает удаление этой возможности ? Являются ли Core Data более эффективными? Является ли трудность, связанная с предпопуляцией, просто побочным эффектом других вариантов дизайна, и если да, то почему предпопуляция не была принята во внимание?
(Отказ от ответственности, что я искренне заинтересован в обосновании этих выборов, и, хотя мой пост мог бы предложить это, я на самом деле не ищу дебаты "Модели в Rails против базовых данных".)