Я создаю приложение, которое использует TabBarController
и имеет несколько представлений, показывающих те же данные, но разными способами.Одним из представлений является TableView, а другим - представление Map.
Данные поступают с сервера, и я хотел бы иметь возможность хранить эти данные, к которым они доступны из нескольких контроллеров представления (есть«Единый источник правды»).Я считаю, что Core Data - хороший выбор, особенно потому, что я считаю класс NSFetchedResultsController
довольно удобным для работы при работе с табличными представлениями.
Данные должны храниться только во время использования приложения, поэтому я думаю об использовании Core Data без фактического сохранения чего-либо на диск.Я увидел, что существует тип магазина In-memory
, который, как мне кажется, мне нужен.Однако я обнаружил, что, просто вставив новую сущность в мой контекст (еще не вызывая context.save()
), NSFetchedResultsController
может уже обнаружить изменения и обновить мой пользовательский интерфейс.
Вопрос 1: Действительно ли необходимо вызывать context.save()
при использовании типа магазина In-memory
?
Я считаю, что это может быть необходимо в случае нескольких контекстов.
Вопрос 2: Если нет необходимости звонить по номеру context.save()
, имеет ли значение, какой тип постоянного хранилища я использую?
Любая помощь приветствуется!