https://androiddev.apptractor.ru/android-dev-podkast-52/Android Dev Подкаст. Выпуск 52. Новогодний с такси Приложения для заказа такси являются одним из лучших примеров mobile-first подхода в построении бизнеса. Они давно изменили ситуацию в мире бизнеса такси в удобную для пользователей сторону. К тому же команды, работающие над подобными приложениями, достигают нескольких сотен разработчиков.
В выпуске Gett, Grab, Lyft, Uber и Я.Такси рассказывают про внутреннюю кухню. Это большое начало серии выпусков про данный вид сервисов и сложности в их разработке.
Обсудили:
Зачем такси свое приложение
Таксометр отдельное приложение?
Разные или одно приложения для водителей и клиентов? Удается что-то переиспользовать?
Как происходит разработка фич для клиентов и для водителей. Их делают разные команды?
A/B тестирование, подходы к реализации UI
Как принимается решение о смене парадигм и как сохранить консистентность кода
Процесс разработки. Как работать с большой командой? Координация, код ревью, общая база знаний, как не запилить одно и то же по несколько раз?
Текущая архитектура и фреймворки
Как строите сетевой слой в приложениях? Обычно в примерах используется обычный rest, но таксишное приложение предполагает использование полнодуплексного протокола.
API с сервером (JSON? ProtoBuf?) Push?
Как много логики и ответственности на стороне клиента, которая по-хорошему (с идеальной сетью) была бы на сервере?
Как приложение обрабатывает состояние разрядки телефона, нестабильного интернет соединения (у водителя)?
Как защищают апп для водителей
Тестирование Unit/ui/интеграционное