Переписывание ubereats.com

Крис Льюис и Брендан Дин из Uber Eats рассказали, почему они пошли по пути переписывания основного сайта проекта и какие плоды это им принесло.

Проблема с предыдущей версией сайта имела накопительный эффект. Это было React-Redux приложение, которое плохо поддавалось разделению на бандлы и имело сложности с поддержкой из-за усложнённого подхода к работе с данными и смешиванию кода для разных платформ (desktop/mobile). В новой версии они перешли на фреймворк fusion.js, созданный Uber на базе React (аналог Next.js). Благодаря ему они получили server side rendering и хорошую поддержку code splitting. Для слоя данных оставили Redux, но только как хранилище данных, которое может быть использовано разными роутами приложения. Для всего остального состояния используется локальное состояние компонентов. Благодаря работающему code splitting решили проблему со смешиванием кода разных платформ.

Очень большая и толковая статья. Рекомендую почитать.

https://eng.uber.com/uber-eats-com-web-app-rewrite/

← На главную