Собрал популярные вопросы с 1617 собеседований, которые прошел со своей группой за год с небольшим, со ссылками на официальную документацию и подробные разборы по каждому пункту.
Основы
- Что такое React?
- Что нового в React 18, 19?
- Перечислите особенности React
- Назовите преимущества использования React
- Является ли React реактивным?
- Разница между JSX и HTML
- Что такое JSX и как он компилируется?
- Как отрендерить HTML код в React-компоненте?
Virtual DOM -> Fiber
- Что такое Virtual DOM? Как он работает с React?
- Что такое React Reconciliation?
- Что такое React Fiber?
- Назовите основную цель React Fiber
- Разница между теневым (Shadow) и виртуальным (Virtual) DOM
Компоненты
- Разница между классовым и функциональным компонентами
- Разница между элементом и компонентом
- Разница между компонентом и контейнером
- Разница между управляемыми (controlled) и неуправляемыми (uncontrolled) компонентами
- Что такое компонент-переключатель (Switching Component)?
- Что такое распределённый компонент?
- Что такое Компонент высшего порядка (HOC)?
- Что такое инверсия наследования (Inheritance Inversion)?
- Методы жизненного цикла компонента в React
- Стадии жизненного цикла компонента в React
- Разница между рендерингом и монтированием
Пропсы, состояние, поток данных
- Как React обрабатывает / ограничивает использование пропсов определённого типа?
- Что такое «бурение пропсов» (Prop Drilling)? Как его избежать?
- Как передавать пропсы в React Router?
- Что такое поднятие состояния вверх (Lifting State Up)?
- Как в React реализовать двустороннее связывание данных?
- Что такое обратный поток данных в React?
Хуки (Hooks)
- Что такое React хуки (Hooks)?
- Преимущества хуков?
- Недостатки хуков?
- Правила (ограничения) использования хуков?
- Когда использовать useMemo, а когда useCallback?
-
useId: https://ru.react.dev/reference/react/useId-
useTransition: https://ru.react.dev/reference/react/useTransition-
useDeferredValue: https://ru.react.dev/reference/react/useDeferredValue-
useSyncExternalStore: https://ru.react.dev/reference/react/useSyncExternalStore-
useInsertionEffect: https://ru.react.dev/reference/react/useInsertionEffectРендеринг
- Что такое условный рендеринг (Conditional Rendering)?
- Что такое «ленивая» (Lazy) функция?
- Что такое синтетические события в React (SyntheticEvent)?
- Что такое события указателя (Pointer Events)?
- Что такое Error Boundary?
- Что такое строгий режим (StrictMode)? Его преимущества?
Маршрутизация и стейт-менеджмент
- Чем React Router отличается от обычной маршрутизации?
- Какие хуки были добавлены в React Router версии 5, 6, 7?
- Что такое Reselect и как он работает?
Прочее
- Что такое «опрос» (Polling)? Как его реализовать в React?
- Техники оптимизации производительности в React?
- Практики безопасности в React
Вообще вопросов по React не больше 100, может показаться что это много, но допустим в разделе "Безопасность, браузер, веб" уникальных вопросов как минимум в 4 раза больше, буквально 400+, поэтому я все-никак не могу найти способ уместить это в один лаконичный пост.. 👨💻
Но если вы поставите много очкариков 🤓, я постараюсь все это осилить и подготовить пост по вопросам из этой категории тоже)
Какие еще вопросы вы встречали на собеседованиях?
Кто я | Кейсы | Менторство
