База данных в разработке iPhone приложений

Я создаю приложение для iPhone, и я хочу, чтобы он загружал данные из внешнего файла (из URL-адреса на сервере), чтобы отобразить подсказки.

Я прочитал несколько руководств, но пока не знаю, что для меня удобнее:

  • Использовать CoreData?
  • Я создаю файл.sql, и я пытаюсь сделать запросы внутри кода моего приложения?
  • Я использую.txt файл и пытаюсь его разобрать?
  • Я использую XML файл?

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

2 ответа

Лучший способ реализовать базу данных на iPhone SDK - использовать CORE Data. - Это не позволяет писать длинные sql-скрипты для извлечения и записи данных в db. - Простая реализация. - Отличный интерфейс для имитации. - переносной - Может обновляться позже, если какое-либо повышение требуется через некоторое время.

Поэтому я хотел бы предложить вам сохранить ваши данные с помощью Core Data. вам нужно получить данные с сервера и вызвать простые методы, чтобы сохранить их в БД приложения с использованием данных Core. Вам даже не нужно много манипулировать им.

Ниже приведены некоторые полезные ссылки для некоторых уроков: http://mobile.tutsplus.com/tutorials/iphone/advanced-restkit-development_iphone-sdk/http://mobile.tutsplus.com/tutorials/iphone/iphone-core-data/


Если ваши данные загрузки с внешнего сервера взгляните на Rest Rest. Он позволяет сопоставлять API с объектами, которые поддерживаются Core Data. http://restkit.org/

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

Другой вариант, если вы ищете самый простой способ захватить файл с сервера и сопоставить его с объектом, это посмотреть на.plists, например:

NSDictionary *data = [dict initWithContentsOfURL:[NSURL URLWithString:@"http://server.com/data.plist"]];

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

licensed under cc by-sa 3.0 with attribution.