Задать вопрос
@DJ-Glock
Junior iOS Developer, Application Support L3

Обработка ошибок CoreData, какие случаи необходимо хендлить?

Добрый день уважаемые.
Полгода назад занялся самообразованием и начал учиться писать под iOS. Трамплином послужили Стэнфордские курсы от Пола Хегарти, которые считаю лучшим источником для начала.

На данный момент зарелизил первое приложение и активно работаю над его разработкой. В приложении используется фреймворк CoreData и на данный момент все данные хранятся на телефоне. Планирую использовать CloudKit для синхронизации с облаком.

Однако по-прежнему остался пробел в знаниях, о том, какие же ошибки есть необходимость хендлить при работе с базой. Во время разработки постарался учитывать все возможные кейсы при сохранении и обработке данных в "ядре" приложения, валидируя данные еще до сохранения из в базе, чтобы избежать возможных ошибок с дубликатами, некорректной вставкой данных и так далее. Поэтому на данный момент практически весь код, связанный с выборкой/вставкой/изменением данных в базе у меня написан на try?. То есть обработки ошибок, как таковых, у меня нет. Сохранились данные - хорошо, работаем далее. Не сохранились, ну и ладно, пользователь увидит, что их нет.

Пробежался глазами по статье Apple - Troubleshooting Core Data, однако ни одну из подобных ошибок пока не получал во время тестирования, так как стараюсь все валидировать в коде.
На сколько я понимаю, одна из ошибок, которая может у меня случиться - невозможность сохранить данные из-за нехватки места. Однако не знаю, на сколько имеет смысл это хендлить в приложении, поскольку iOS сама напомнит пользователю когда место заканчивается.

Интересуют ваши мысли, товарищи, основываясь на вашем опыте - какие ошибки и как вы обрабатываете, работая с CoreData?

Извините за большое количество текста, хотел максимально описать ситуацию и не хотел с этим вопросом идти на StackOverflow, интересно мнение русскоязычных коллег. В идеале хотелось бы обрабатывать ошибки так, чтобы максимум информации куда-то сохранялось и отпарвлялось мне, как разработчику, для последующего анализа.
  • Вопрос задан
  • 206 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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