Собеседования
October 4, 2023
Вопросы для собеседования по React
Как работает React?
- Виртуальный DOM
- Реконселяция
- Фибер
- Батчинг
Что вызывает ре-рендер компонентов?
- Изменение
props - Изменение
state - Изменение
context - Изменение зависимостей в хуках
- Изменение ключей
- forceUpdate()
- Ре-рендер родителей
Различие классовых и функциональных компонентов?
- Плюсы:
- Сложнее: this, контекст
- Тянут по прототипу лишние методы
- Можно добавлять/удалять методы
- Использование HOC (создание большой вложенности)
- Сложно анализировать объектно-ориентированный код
- Сложный лайф-сайкл
- Минусы
Хуки
Преимущества
Особенности useState?
- Хук синхронный
- Нельзя мутировать
state - Сеттер
useStateявляется асинхронным из-за батчинга
Разница между useEffect и useLayoutEffect?
- Синхронный
- Вызывается когда компонент появился в Virtual DOM, но еще не был отрисован
- По сути откладывает процесс отрисовки в браузере
Что такое useReducer?
Хук Дэна Абрамова для удобного перехода с redux на чистый react + сontext API
Мемоизация в React
Архитектура
Подходы:
Стейт-менеджеры
Когда использовать внутренние и сторонние инструменты для работы с состоянием?
- Для работы с простым локальным состоянием компонента нужно использовать внутренние инструменты
useStateuseReduceruseSelector - Для описания сложной бизнес-логики, где требуются сложные взаимосвязи сущностей нужно использовать сторонние библиотеки
ReduxMobXEffector
Redux
Что такое Redux?
- Фреймворк для создания бизнес-логики
- Создан на основе парадигмы
flux - В основе паттерн Singleton
- Основные атомы:
Преимущества redux-toolkit
- Комплект удобных инструментов для решения типовых задач
- Автоматическая генерация
actions - Встроенный
long polling - Встроенная асинхронность
MobX
Оптимизация
Разница между React, Angular и Vue
React 18
October 4, 2023, 11:27
0 views
0 reactions
0 replies
0 reposts