стоит ли использовать базовые данные для простого приложения sqlite на iphone с одной таблицей и без взаимосвязей или сложных подтаблиц / представлений? - PullRequest
17 голосов
/ 25 июня 2009

С этого момента нужно ли использовать базовые данные в качестве оболочки для небольшого приложения для iphone с базой данных sqlite для одной таблицы?

Это излишне усложняет вещи или это хорошая практика для использования с этого момента?

Ответы [ 5 ]

16 голосов
/ 25 июня 2009

Да, я думаю, что Core Data не является сложным API - и предоставляет доступ ко многим мощным функциям.

Мне пришлось принять то же решение, что и вы - я потратил полдня на базовые данные и был очень рад.

Приложение, которое начинается с одной таблицы, может быстро стать больше, и если вы не основываетесь на прочном фундаменте, вы обнаружите, что в будущем у вас возникла огромная головная боль - просто чтобы сэкономить время.

Да, это хорошая практика - вы будете очень благодарны за выбор маршрута Core Data.

4 голосов
/ 01 июля 2009

Оно того стоит.

  1. Ваша модель с одним столом может стать более сложной в будущей версии. CoreData имеет некоторые средства для обработки миграции, когда базовая модель изменилась.
  2. Позволяет использовать NSFetchedResultsController, если вы используете UITableView. Вам почти не придется кодировать что-либо, связанное с постоянством, и это гарантирует, что в памяти никогда не будет больше объектов, чем нужно для отображения.
  3. Это удастся вам отменить. Бесплатно.

Стоит пару часов почитать учебник и справочник, ИМХО.

2 голосов
/ 01 июля 2009

Я уже говорил это раньше. Посмотрите, как просто сохранить ваши данные в простой файл PLIST. Я знаю несколько приложений, которые делают это сегодня в магазине приложений, и в этом нет ничего плохого.

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

CoreData великолепен, и я использую его в более сложном приложении, но у него МНОГИЕ знания, и я думаю, что это больше 3 проекта, чем полдня.

1 голос
/ 26 июня 2009

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

1 голос
/ 25 июня 2009

Если бы я создавал приложение с нуля или в любом случае делал серьезную ревизию, я бы одновременно посмотрел на Core Data.

В противном случае, если он не сломался ...

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