Pull to refresh

Comments 11

Мне кажется лучше было бы сделать кэширование на диске с определенным сроком жизни кэша и с возможностью принудительного его обновления, как всего целиком, так и каждой кэшируемой единицы в отдельности (как кукисы например).
Скорость доступа к данным на диске на два порядка а то и на все три быстрее сетевого доступа, поэтому тут преимущество хранения данных в памяти над хранением на диске практически небольшое. Но засорять память кэшем, который непонятно когда потребуется — помоему не очень оптимально.

На мобильных системах всегда нужно думать о балансе оптимальности/размера и производительности.
Данные из кэша автоматом удаляются, если в течение 2 минут к ним не было доступа. Опять же «диск» имеет конечное количество циклов записи.
Получается очень маложивущий кэш. Опять таки не очень универсальное решение.
По поводу циклов перезаписи, тут я не согласен. Проблема не актуальная. Я не видел ни одного еще примера, когда законился бы ресурс флэша на телефоне.
Даже за 4 года активного использования моего iPhone первого поколения такой проблемы не замечено. Так что тут сроки старения технологически намного меньше чем срок жизни диска.
Но это мое субьективное мнение.
В любом случае, не отрицаю, что это одно из возможных решений, а те недотатки, что я высказал — это мое видение решения этой задачи.
Почему плохо отписываться от уведомлений вот так [center removeObserver:self]; link
В отношении к UIViewController — полностью согласен с автором статьи по ссылке. Но я использую отписывание от всех нотификаций в деаллоке синглтона, который будет вызван при окончании работы приложения, так что описанных проблем не возникнет. Но для чистоты кода исправил и перезалил на гитхаб.
Переменная _cache не релизится в dealloc
> P.S. Компилировал с включенным ARC.
Почему не использовать стандартные вещи из NSURLRequestCachePolicy? Свои велосипеды лучше? или была потребность с кеше, который по сути кешем является в ваших собственных терминах?
Была необходимость в кеше именно таким поведением.
Маловато гибкости в cache policy. Даже нет возможности задать время жизни кеша.
Sign up to leave a comment.

Articles