У меня есть некоторые платежи (доходы и расходы), которые добавляются к Core Data
, и каждый день я рассчитываю общее количество, а также показываю, сколько дней подряд сумма платежей была положительной.Как рассчитать количество последовательных дней из данных Core Data?
Как я поступаю прямо сейчас, всегда получаю итог за предыдущий день и увеличиваю счетчик, если он положительный. Этот счетчик сохраняется с использованием UserDefaults
.
Моя проблема в том, когда можно сказать, что приложение удалено и переустановлено, счетчик потерян, поэтому я пытаюсь найти способ подсчитывать его динамически каждый раз, но я не думаю, что чтение всех платежей за все дни - это хорошая идея с точки зрения памяти.
Другое решение может быть сохранено с помощью Keychain
?
Есть ли еще более элегантный метод? Мне не очень нравится идея сохранения этого счетчика.
как разумно потребительной случай удаления и переустановки приложения? Предполагая, что вы сбросите счетчик, если баланс будет отрицательным, вам просто не нужно загружать баланс в порядке обратной даты и считать, пока вы не понесете отрицательный результат? Должно быть довольно быстро – Russell
@ Russell: но разве мне не нужно читать все платежи из Core Data, чтобы рассчитать это снова? Может быть, я не понял, что у вас спрашивает – Kobe
. Я думаю, это зависит от того, сколько записей у вас есть - если это управляемо, то просто прочитайте все это. Если слишком большой, читайте в партиях по 50 дней или что-то еще? – Russell