Я работаю над приложениями Core Data, основанными на документах.Автосохранение с данными какао и ядра
Я бы хотел, чтобы изменения были сохранены по мере их возникновения. Это то, чего ожидает пользователь в этом типе приложения. Это также то, что Apple внедрила в iPhoto или iTunes.
Подход, основанный на грубой силе, заключается в том, чтобы настроить таймер для сохранения часто. Метод, вызванный сохранением, затем проглотит все ошибки проверки, чтобы не беспокоить пользователя. Только после выхода из системы пользователь будет прослушивать данные, чтобы сохранить их. ИМХО, этот подход воняет.
Итак, я думаю, должен быть способ как-то сэкономить на чем-то вроде протокола NSEditor
. Каждый раз, когда пользователь (или контроллер) заканчивает редактирование данных, делегат приложения должен каким-либо образом уведомлять триггер о операции сохранения. Дело в том, что я не совсем понимаю, где искать.
Я думаю, что для более сложных операций, которые могут потребоваться для некоторых перекрестных проверок, я бы представил пользователю бит интерфейса, привязанный к выделенному NSManagedObjectContext
.
Если вы уже поддерживаете отмену, просто сохраните ее каждый раз, когда вы нажимаете что-то на стопку отмены. –
Я еще не поддерживаю Отменить. Я использую только то, что предоставляет CoreData. Но вы делаете сильный аргумент в пользу расширенной поддержки Undo. –