🛠️

Preguntas clave para entrevistas de React

Nov 22, 2024

GitHub - midudev/preguntas-entrevista-react: Preguntas típicas sobre React para entrevistas de trabajo

Introducción

  • Este repositorio contiene preguntas típicas de entrevistas sobre React.
  • Ofrece respuestas en español y está orientado desde principiantes hasta expertos.
  • Hay recursos adicionales como streams en Twitch y una comunidad en Discord.

Contenido

Principiante

  • ¿Qué es React?

    • Biblioteca JavaScript para construir interfaces de usuario.
    • Basada en componentes, permite dividir la interfaz en partes reutilizables.
    • Usa Virtual DOM, es declarativo y unidireccional.
    • Utilizable en cliente y servidor, y permite desarrollo nativo con React Native.
  • Características principales

    • Componentes, Virtual DOM, Declarativo, Unidireccional, Universal.
  • Conceptos básicos

    • JSX: Sintaxis que combina JavaScript y HTML.
    • Estado y Props: Props son inmutables y pasadas de padres a hijos; el estado es mutable dentro del componente.
    • Renderizado condicional y de listas.
    • Estilos en React: Uso de className para clases y style para estilos en línea.
  • Hooks Básicos

    • useState: Para manejar estados dentro de componentes funcionales.
    • useEffect: Para manejar efectos colaterales, como suscripciones y API calls.
    • useId: Para generar identificadores únicos.

Intermedio

  • Hooks personalizados: Permiten reutilizar lógica entre componentes.
  • Ciclo de vida de componentes: Uso de useEffect para manejar montaje y desmontaje de componentes.
  • Componentes controlados vs. no controlados: Controlados manejan su estado con React; no controlados dependen del DOM.
  • Server Side Rendering (SSR): Técnica para mejorar la carga inicial y SEO.
  • Virtualización y paginación: Técnicas para mejorar el rendimiento con grandes cantidades de datos.

Avanzado

  • Renderizado en servidor: Uso de renderToPipeableStream para mejorar el SSR.
  • Optimización con useMemo y useCallback: Para evitar cálculos innecesarios y crear funciones memorables.
  • Contexto en React: Uso de createContext y useContext para manejar datos globales.
  • Error Boundaries: Mecanismo para capturar errores en el árbol de componentes.

Errores comunes y tips

  • Keys únicas en listas: Importante para identificar correctamente elementos al renderizar listas.
  • Reglas de Hooks: Deben llamarse en el mismo orden para mantener consistencia.
  • Evitar actualizaciones de estado en componentes desmontados: Uso de AbortController para manejar peticiones asíncronas.

Testing en React

  • Testing de componentes con @testing-library/react.
  • Testing de hooks con @testing-library/react-hooks.

Otros conceptos

  • Shadow DOM vs. Virtual DOM: Shadow DOM es para encapsulación; Virtual DOM es para rendimiento.
  • Binding en React: One-Way y Two-Way Binding para manejo de estado y vista.