React: вопросы на собеседовании
Вопросы и ответы по React: подготовка, примеры и типичные ошибки.
Проверьте себя по React: 5 вопросов, ~10 минут
Вопросов: 42. Частые идут первыми, сложные возвращаются на повторение.
- Что такое ключи (keys) в списках React и почему они важны?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Каковы основные отличия React 18 от React 19?Senior· спрашивают почти всегда
- В каких типах frontend-проектов React даёт реальный выигрыш, а где будет избыточен или неудачен?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Объясните правила хуков. Почему хуки нельзя вызывать условно?Junior· спрашивают почти всегда
- Что такое хук useEffect и как работает его массив зависимостей?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Объясните хук useState. Какие типичные ошибки возникают при обновлении состояния?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Как реализовать code splitting в React-приложении?Middle· полный разбор — Jobs/Boost
- Объясните Context API. Каковы его последствия для производительности?Middle· полный разбор — Jobs/Boost
- Что такое контролируемые (controlled) и неконтролируемые (uncontrolled) компоненты в формах?Middle· полный разбор — Jobs/Boost
- Как работает обработка ошибок в React? Что такое Error Boundaries?Middle
- Что такое React Actions и
useTransition? Как они улучшают UX?Senior· полный разбор — Jobs/Boost - Как сравнить React с ближайшими альтернативами по DX, performance, SEO, accessibility, hiring и поддержке команды?Middle· полный разбор — Jobs/Boost
- Как понять, что проблема в проекте связана с React, а не с API, сетью, дизайном состояния или плохой архитектурой?Senior
- Представьте, приложение на React стало медленно открываться или часто перерисовываться. Как вы будете искать причину?Senior· полный разбор — Jobs/Boost
- Какие архитектурные решения React навязывает вокруг rendering, state, routing, styling, data loading или deployment?Middle
- Какие production-риски есть у React: hydration, bundle size, caching, accessibility, browser compatibility или observability?Senior· полный разбор — Jobs/Boost
- Проект на React вырос из небольшого интерфейса в большой продукт. Какие архитектурные проблемы вы ожидаете увидеть?Senior· полный разбор — Jobs/Boost
- Что такое React Server Components? Чем они отличаются от Client Components?Senior· полный разбор — Jobs/Boost
- В чём разница между SSR (server-side rendering) и SSG (static site generation) в React?Middle· полный разбор — Jobs/Boost
- Что такое Suspense в React? Как он работает с lazy loading и получением данных?Senior· полный разбор — Jobs/Boost
- Как тестировать React-компоненты? В чём разница между unit, integration и e2e тестированием?Middle
- Что такое хук
use(), представленный в React 19?Senior· полный разбор — Jobs/Boost - Что такое useCallback и useMemo? Когда их использование действительно улучшает производительность?Middle· полный разбор — Jobs/Boost
- Что такое useRef и когда его стоит использовать вместо useState?Junior
- Что такое Virtual DOM и как React использует его для оптимизации рендеринга?Junior· полный разбор — Jobs/Boost
- В чём разница между функциональными компонентами и классовыми компонентами?Junior· полный разбор — Jobs/Boost
- Что такое «подъём состояния» (lifting state up) и когда он необходим?Junior
- Что такое prop drilling и как его решить?Middle· полный разбор — Jobs/Boost
- Как проектировать accessibility для модалок, меню и autocomplete в React?Middle· полный разбор — Jobs/Boost
- Что такое React Compiler (стабилен в React 19) и как он меняет ручную мемоизацию?Senior
- Расскажите о случае, когда вы улучшали performance, accessibility, testing или maintainability в проекте на React.Middle
- Что такое
React.memo? Когда он предотвращает повторный рендеринг?Middle· полный разбор — Jobs/Boost - Что такое React Portals и когда их стоит использовать?Middle
- Как профилировать лишние ререндеры через React DevTools Profiler?Middle· полный разбор — Jobs/Boost
- Что такое
useOptimisticи когда optimistic UI ломает консистентность данных?Middle· полный разбор — Jobs/Boost - Как работает
useSyncExternalStoreи зачем он нужен библиотекам состояния?Middle - Что такое reconciliation в React? Как работает алгоритм сравнения (diffing algorithm)?Senior
- В чём разница между useEffect и useLayoutEffect?Middle· полный разбор — Jobs/Boost
- Что такое хук useReducer? Когда его предпочесть useState?Middle· полный разбор — Jobs/Boost
- Что такое Higher-Order Component (HOC)? Чем он отличается от кастомного хука?Middle· полный разбор — Jobs/Boost
- Что такое паттерн render props? Актуален ли он в современном React?Middle· полный разбор — Jobs/Boost
- В чём разница между
useImperativeHandleи обычным ref?Senior