Intereting Posts
Как отслеживать анимацию в Sprite Kit Всплывающее или уведомление iOS7, продолжающееся несколько секунд Тег UIButton не установлен правильно в cellForRowAtIndexPath NSMutableDictionary из NSMutableArray с использованием KVC запись событий для UIswitch в режиме просмотра коллекции Сохраняете ли вы позицию своего отзыва после удаления сборки из iTunes Connect? Использование UIPastboard для обмена данными с iOS Numbers App Как загружать видеофайлы в фоновом режиме? «Дата доступности» на itunes подключить новый интерфейс? xcode 8 и iOS 10 Локальные уведомления Проверить приложение iPhone на реальном устройстве Подождите после Как проверить, зарегистрирован ли пользователь в FBSDKLoginKit в iOS? Могут ли изображения iOS Retina иметь нечетные размеры, т.е. 28 x 15 px? Определите, если пользователь отклонил push-уведомление, всплывающее окно (одновременно отображает несколько блоков предупреждений)

Множественные таблицы и отношения

Какой лучший способ и как работать с краткими таблицами в проекте iOS и поддерживает ли FMDB отношения между таблицами? Должен ли я использовать Coredata или оболочку FMDB?

Независимо от того, что вы хотите сделать, вы можете использовать либо Core Data, либо FMDB + SQLite.

В принципе, если одно из следующих утверждений верно, я предлагаю использовать SQLite.

  • Производительность действительно важна
  • У вас уже есть огромная база данных SQLite из других источников
  • Вы планируете как-то сделать кросс-платформу базы данных

Взгляните на это сообщение в блоге, чтобы узнать о различии между SQLite и Core Data.

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

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

Вывод:

Используйте Core Data, если у вас уже нет базы данных SQLite в другом месте, или производительность имеет большое значение (и я имею в виду много).

Для этого нет ни одного хорошего вопроса. Это зависит от проекта.

На мой взгляд, если у вас уже есть данные, которые вы хотите импортировать в приложение, и вы столкнетесь с огромным количеством данных в своей базе данных, вы должны пойти на чистый sqlite (и, возможно, на FMDB).

Если вы подключаетесь к REST, хотите использовать TableViews, начиная с пустой базы данных, CoreData вернет вам ответ.

FMDB – это только оболочка на sqlite поэтому у него будут отношения, потому что у sqlite есть.