Мобильный продукт меняет путь привлечения клиента
Приведённая статистика 2020 года показывает широкое распространение мобильного интернета и большую роль Google и Facebook в развитии платформ. Исторический обзор связывает браузеры, JavaScript, Node.js, интерфейсные библиотеки и мобильные инструменты. Его смысл — показать расширение области применения веб-стека, а не представить однажды популярный фреймворк обязательным выбором для любого следующего проекта.
В примере Тинькофф традиционный путь клиента начинался с рекламы и посадочной страницы с заявкой; мобильное приложение появлялось позже, для использования продукта. Новый путь предлагал сначала установить приложение, а затем оформить продукт внутри него. Таким образом, мобильный канал занимал и часть задач привлечения. Веб сохранял значение, но границы между каналами менялись вместе с пользовательским сценарием.
Выбор платформы зависит от стадии продукта
Веб-технологии рассматриваются не только в браузере: Node.js позволяет использовать JavaScript на сервере, Electron — в настольных приложениях, а мобильные решения предлагают разные способы совместного использования кода. При этом общность языка не устраняет различий между платформами. Возможности устройства, требования к интерфейсу и ограничения выбранного подхода нужно учитывать отдельно от привлекательности единой кодовой базы.
Для проверки идеи автор предлагает начинать с веб-приложения и при необходимости PWA, затем рассматривать мобильную оболочку. Если идея подтверждена и есть ресурсы, возможна нативная разработка. Кроссплатформенные инструменты вроде React Native и Flutter рассматриваются как другой компромисс, когда писать несколько отдельных приложений не хочется. Это варианты инвестиционного решения, а не утверждение, что одна технология одинаково подходит всем продуктам.
Backend for Frontend переносит ответственность ближе к интерфейсу
Общее API часто заставляет мобильный или веб-клиент делать несколько запросов для одного экрана и самостоятельно объединять данные. Такая логика дублируется на разных платформах, а команда интерфейса зависит от чужой очереди изменений. В качестве решения показан Backend for Frontend: отдельный серверный слой под конкретный клиент, которым владеет соответствующая продуктовая команда.
В этот слой переходят обращения к общим сервисам и сборка ответа для интерфейса. Клиентский код упрощается, а серверную часть можно обновлять независимо от установленного мобильного приложения. Однако появляется дополнительная точка отказа, и задержка ответа зависит от обращений к нижележащим системам. Поэтому BFF расширяет возможности и ответственность фронтенд-команды одновременно: ей нужны знания о серверной разработке и эксплуатационных последствиях своего решения.
Что стоит унести с собой
- 01Mobile first меняет распределение пользовательских сценариев между каналами, но не отменяет веб-разработку.
- 02Нативный, веб- и кроссплатформенный подходы следует выбирать с учётом стадии продукта и ограничений платформ.
- 03BFF упрощает клиент и улучшает управляемость изменений ценой дополнительного серверного слоя и ответственности.
Источники
- Мир web'а в эпоху mobile first
- Слайды материала
- Запись выступления