Core Data VS SQL Statement, какой gd для разработки на iphone? - PullRequest
0 голосов
/ 18 февраля 2010

iPhone 3.0 поддерживает Core Data, кажется отличным инструментом для разработчика. Но оператор SQL кажется легче начать, но основные данные легче поддерживать в БД. Но я рассматриваю оператор SQL, потому что он, кажется, имеет лучшую производительность. Я считаю, какой из них лучше для разработки iPhone, любое предложение?

Ответы [ 3 ]

6 голосов
/ 18 февраля 2010

Ответ, на самом деле, намного проще, чем любой из этих постов в блоге.Правило:

  1. Если вы разрабатываете для любой платформы OS X;
  2. Если у вас нет доступа к проприетарному формату;и
  3. Если ваш файл персистентности не нужно читать на платформе, отличной от OS-X

Тогда вам следует использовать Core Data.Это так просто.Базовые данные предоставляют вам так много возможностей, а простота использования по сравнению с простым SQL делает выбор простым.Что касается производительности, то это красная сельдь.Там, где это имеет значение, Core Data может легко выполнить пользовательский код, обращающийся к базе данных SQLite.Тем не менее, производительность на Cocoa Touch на самом деле вторичная проблема.

Основная проблема - память.У вас есть небольшой объем памяти для работы с Cocoa Touch, и ваша модель данных может легко справиться с этим.Базовые данные решают эту проблему.Он следит за тем, сколько памяти он использует, и автоматически удаляет объекты из памяти , когда получает предупреждение о памяти.Весь этот довольно сложный код вы должны были бы написать сами, если бы использовали SQLite напрямую.

Меньше времени на кодирование модели данных означает, что у вас больше времени на то, чтобы сделать ваше приложение великолепным.

0 голосов
/ 18 февраля 2010

Здесь есть подробное объяснение различий между двумя: http://cocoawithlove.com/2010/02/differences-between-core-data-and.html

Это отличное чтиво. 2 подхода разные, и у обоих есть свои плюсы и минусы.

0 голосов
/ 18 февраля 2010

Это обеспечивает разумный список плюсов и минусов любого из подходов: http://maniacdev.com/2009/09/iphone-sqlite-vs-core-data-–-which-to-choose/

Рекомендуется использовать базовые данные, поскольку в долгосрочной перспективе это значительно упрощает задачу.

...