Вопрос по sqlite, iphone – стоит ли использовать базовые данные для простого приложения sqlite на iphone с одной таблицей и без взаимосвязей или сложных подтаблиц / представлений?

17

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

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

Ваш Ответ

5   ответов
2

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

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

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

1

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

1

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

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

16

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

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

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

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

4

Your 1-table model may become more complex in a future version. CoreData has some facilities to handle migration when the underlying model has changed. It allows you to use NSFetchedResultsController, if you use an UITableView. You almost won't have to code anything persistence-related, and it ensures that you'll never have more objects in memory than you really need for displaying. It will manage undo for you. For free.

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

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