Войти Регистрация
System design

2. Бесконечная выдача товаров на фронтенде

Средняя

Формат — архитектурная секция фронтенда. Сценарий наш: выдача маркетплейса. Пройдите шаги: уточните требования, оцените нагрузку, выберите решения, нарисуйте схему.

Выдача по запросу «кроссовки» листается бесконечно, порциями по 24 карточки. Покупатель долистывает до 2000 карточек, открывает товар и жмёт «назад».

Карточка — 40 DOM-узлов и фото 400×400. Половина аудитории — смартфоны за 10–15 тыс. ₽ с 3 ГБ памяти.

В работе: Длинная выдача на слабом Android тормозит уже на тысяче карточек, а возврат «назад» на начало списка злит покупателя.

Как проверяем Шаги с вариантами и расчётами проверяем автоматически: число засчитано, если оно в пределах допуска от эталона. Схему вы оцениваете сами по чек-листу. Зачёт — схема набрала 60 % чек-листа и верны 70 % остальных пунктов. Ответ один на подход: после него показываем разбор.
фронтендвиртуализацияпагинациякэш

Источник: Яндекс: фронтенд, секция архитектуры в треке с опытом проектирования. Условие пересказано своими словами.

Давали на собеседовании? Ответов пока мало — ваш поможет.
  1. Уточнить требования — Что выяснить до схемы?
  2. Оценить нагрузку на браузер
  3. Пагинация — Какой контракт API для подгрузки порций?
  4. Возврат «назад» — Как вернуть покупателя на ту же карточку?
  5. Схема — Опишите компоненты списка, данные и путь «назад».