За последние годы я сделал не один десяток мобильных приложений, и читалки для книг — отдельное направление, которое мне особенно интересно: здесь важна не просто красивая обёртка, а надёжная работа вообще без сети. Беру в работу задачи под ключ — от архитектуры хранения данных до публикации в магазинах приложений.
Главная техническая сложность такого приложения — не интерфейс, а то, что происходит, когда связи нет. Книга, заметка или закладка должны сохраняться на устройстве мгновенно, без ожидания ответа от сервера, а синхронизация с другими устройствами — происходить в фоне и без участия пользователя, как только сеть появится снова. Отдельно продумываю ситуацию, когда один и тот же файл читали на двух устройствах параллельно: приложение должно аккуратно объединить прогресс, а не затереть один вариант другим.
Работаю с форматами EPUB, PDF, FB2, поддерживаю пользовательские темы оформления и настройку шрифта под длительное чтение. Могу подключить импорт файлов из внешних хранилищ и добавить полнотекстовый поиск по всей библиотеке. По итогу заказчик получает не макет, а рабочее приложение, готовое к публикации, вместе с кратким описанием архитектуры для дальнейшей поддержки.
Главная техническая сложность такого приложения — не интерфейс, а то, что происходит, когда связи нет. Книга, заметка или закладка должны сохраняться на устройстве мгновенно, без ожидания ответа от сервера, а синхронизация с другими устройствами — происходить в фоне и без участия пользователя, как только сеть появится снова. Отдельно продумываю ситуацию, когда один и тот же файл читали на двух устройствах параллельно: приложение должно аккуратно объединить прогресс, а не затереть один вариант другим.
Работаю с форматами EPUB, PDF, FB2, поддерживаю пользовательские темы оформления и настройку шрифта под длительное чтение. Могу подключить импорт файлов из внешних хранилищ и добавить полнотекстовый поиск по всей библиотеке. По итогу заказчик получает не макет, а рабочее приложение, готовое к публикации, вместе с кратким описанием архитектуры для дальнейшей поддержки.