React Native

Optimización del rendimiento

Optimización de FlatList, memo, useMemo/useCallback, Hermes, profiling, tamaño del bundle

24 preguntas de entrevista·
Senior
1

¿Cuál es el rol principal de React.memo en la optimización del rendimiento de React Native?

Respuesta

React.memo es un Higher-Order Component que memoriza el resultado del renderizado de un componente funcional. Evita re-renders innecesarios comparando las props actuales con las anteriores (shallow comparison por defecto). Si las props no han cambiado, React reutiliza el resultado memorizado en lugar de volver a renderizar el componente, lo que mejora significativamente el rendimiento en listas o árboles de componentes complejos.

2

¿Qué propiedad de FlatList optimiza significativamente el scroll proporcionando las dimensiones de los items por adelantado?

Respuesta

getItemLayout es una propiedad opcional de FlatList que permite calcular por adelantado la altura, el ancho y el offset de cada elemento. Esto evita que React Native mida dinámicamente cada item, lo que mejora considerablemente el rendimiento del scroll, especialmente al saltar a un índice específico con scrollToIndex. Esta optimización es particularmente útil cuando todos los items tienen el mismo tamaño.

3

¿Cuál es la diferencia principal entre useMemo y useCallback en términos de optimización?

Respuesta

useMemo memoriza el resultado de un cálculo costoso y devuelve ese valor calculado, mientras que useCallback memoriza una función en sí misma y devuelve esa función. useMemo es útil para evitar recálculos pesados en cada render, mientras que useCallback es esencial para evitar recrear funciones pasadas como props a componentes hijos memorizados, lo que rompería su optimización React.memo.

4

¿Qué es Hermes y cuál es su principal ventaja para las aplicaciones React Native?

5

¿Por qué es crucial proporcionar una función keyExtractor estable a FlatList?

+21 preguntas de entrevista

Otros temas de entrevista React Native

Domina React Native para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis