Сегодня создание клиент-серверного приложения не кажется такой уж сложной задачей даже на мобильных платформах, которые имеют много своих особенностей — частые потери сети, переключение между Wi-Fi и сотовыми данными, малое время автономной работы. Но при проектировании приложения, которое полноценно выполняет все свои основные задачи одинаково хорошо в любых «погодных условиях»: и в метро, и в самолете, в отпуске, и даже в эпицентре ядерного взрыва — всплывает несколько важных вопросов, которые требуют решения:
- когда и в каком объеме подгружать данные для оффлайн работы, ведь сеть может пропасть в любой момент, а большой объем траффика может стоить дорого в сотовых сетях;
- в каком виде хранить историю операций совершенных пользователем за время нахождения в оффлайне;
- как за минимальное время синхронизировать большой объем операций при восстановлении соединения с сервером;
- как сохранять актуальность данных, после того как они были загружены для оффлайн работы.
О том как решить эти проблемы и о многом другом поговорим на докладе «Есть ли жизнь в оффлайне? Кеш, транзакционный лог и проблемы синхронизации» на примере iOS приложения LinguaLeo.
Презентация доклада:
Запись выступления: