Подборка объединяет вопросы, отмеченные на этапах интервью в X5. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: frontend, sharding, database.
** в React 17 автоматический бэтчинг действует внутри React-событий, а в остальных случаях используют unstable_batchedUpdates либо логически объединяют состояние через useReducer, чтобы сократить число ререндеров.
Контекст: управление состоянием в Redux и аналогичных библиотеках dispatch выполняется синхронно, поэтому последовательность вызовов имеет значение чтобы выполнить действие последним, вызовите dispatch в конце цепочки…
Управлять окружением с помощью виртуальных сред (virtualenv, venv, conda) Использовать Docker-контейнеры, чтобы отделить системные и библиотечные зависимости Явно закреплять версии в файлах вроде requirements.txt,…
задать допустимые версии в package.json: использовать фиксированные значения или контролируемые диапазоны организовать монорепозиторий с единой конфигурацией зависимостей добавить в CI/CD автоматическую проверку…
Как объединить обновления состояния при нескольких вызовах setState? Изменение состояния в React с последующим обновлением UI setState работает асинхронно, поэтому обновления могут объединяться Для получения…
Принцип замены Лисков во фронтенде (React) SOLID — фундаментальный принцип ООП, применимый и к компонентной архитектуре подмена подкласса или компонента не должна нарушать работу родительской логики компонент обязан…
кэш — локальное хранилище для быстрого доступа к данным задавать ограничение размера кэша (quota) применять политики замещения: LRU, LFU, FIFO настраивать автоматическую очистку: удалять элементы, которые используются…
Модульное тестирование с Jest и React Testing Library Изолированная проверка рендеринга компонентов и обработки событий Моки для пропсов и внешних зависимостей Запуск тестов через CLI без использования браузера…
Функция map преобразует массив вызывая переданную функцию для каждого его элемента и формируя новый массив с полученными результатами при этом исходный массив остаётся неизменным, что обеспечивает иммутабельность для…
Как установить последний приоритет для экшена при диспатче Контекст: контроль порядка выполнения в Redux/Middleware Подключить middleware, которое будет управлять последовательностью диспатчей Организовать очередь…
Как синхронизировать версии зависимостей между микрофронтами? архитектура микрофронтов, зависимости Независимое управление: каждый микрофронт может поставляться со своей версией React Согласование версий в npm…