Мы начинаем разработку собственного приложения в программе для разработчиков iPhone Enterprise. Поскольку он близок к OS 3.0, мы пересматриваем нашу первоначальную схему использования SQLite и вместо этого используем Core Data. Вот еще немного информации:
- Это устаревшее настольное приложение, которое оно заменяет. Мы будем повторно использовать существующую серверную часть.
- В настоящее время у нас есть база данных SQLite, созданная в качестве доказательства концепции. По сути, это урезанная версия существующей серверной базы данных.
- Мы будем загружать данные с удаленного сайта и хранить их локально, где они будут сохраняться и должны быть. Мы обновляем его только в том случае, если он изменился, то есть каждые месяц или два. Скорее всего, мы будем использовать XML или JSON для передачи данных.
- В этом проекте участвуют два разработчика, и мы оба хорошо разбираемся в SQL, но ни один из них не использовал Core Data.
У меня следующие вопросы: в чем преимущество Core Data перед SQLite, какие преимущества будут в этом конкретном случае и оправдывают ли эти преимущества изучение новой структуры вместо использования существующих сильных навыков SQL?
РЕДАКТИРОВАТЬ: я только что заметил этот вопрос: Core Data vs SQLite 3. Я предполагаю, что мои вопросы таковы:
- Если мне нужно проверить, существует ли конкретный элемент или есть ли обновление, что легко сделать с помощью SQL, имеет ли смысл Core Data? Могу ли я загрузить первый объект в график и проверить номер версии, не загружая весь график?
- Если мы уже знаем SQL, оправдывают ли преимущества Core Data для этого одного проекта изучение этого языка?