# Ottimizzazione delle Performance React (React / Next.js) > React.memo, useMemo, useCallback, lazy loading, code splitting, React DevTools Profiler - 22 domande da colloquio - Senior - [Domande da colloquio: React / Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio.md) ## 1. Qual è il ruolo principale di React.memo? **Risposta** React.memo è un Higher-Order Component che memorizza il risultato del rendering di un componente. Esegue un confronto superficiale delle props e salta il re-rendering se le props non sono cambiate. Particolarmente utile per ottimizzare componenti figli costosi che ricevono frequentemente le stesse props. ## 2. Qual è la differenza principale tra useMemo e useCallback? **Risposta** useMemo memorizza il risultato di una funzione (il valore restituito), mentre useCallback memorizza la funzione stessa. useMemo viene usato per ottimizzare calcoli costosi, mentre useCallback viene usato per stabilizzare i riferimenti alle funzioni passate come props, evitando re-rendering non necessari dei componenti figli memorizzati. ## 3. In quale caso l'uso di React.memo può essere controproducente? **Risposta** React.memo può essere controproducente sui componenti che ricevono props diverse ad ogni rendering, poiché il costo del confronto superficiale delle props viene aggiunto senza beneficio (il componente verrà comunque re-renderizzato). È meglio riservare React.memo ai componenti che ricevono spesso le stesse props e hanno rendering costosi. ## Altre 19 domande disponibili - Perché usare useCallback per una funzione passata come prop a un componente memorizzato con React.memo? - Qual è il vantaggio principale del code splitting con React.lazy? Registrati gratis: https://sharpskill.dev/it/login ## Altri argomenti di colloquio React / Next.js - [Fondamenti di JavaScript](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/javascript-essentials.md): 25 domande, Junior - [Fondamenti di React](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-fundamentals.md): 20 domande, Junior - [React Hooks](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-hooks.md): 22 domande, Junior - [Ciclo di vita dei componenti](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/component-lifecycle.md): 18 domande, Junior - [React Router](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-router.md): 20 domande, Junior - [Gestione dello state con Context](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/state-management-context.md): 18 domande, Junior - [Form e Controlled Components](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/forms-controlled-components.md): 20 domande, Mid-Level - [Recupero dati e API](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/fetching-data-api.md): 20 domande, Mid-Level - [React Query (TanStack Query)](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-query-tanstack.md): 20 domande, Mid-Level - [Styling & CSS-in-JS](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/styling-css-in-js.md): 18 domande, Mid-Level - [Fondamentali di Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-fundamentals.md): 25 domande, Mid-Level - [TypeScript con React](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/typescript-react.md): 20 domande, Mid-Level - [Data Fetching in Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-data-fetching.md): 24 domande, Mid-Level - [Server Actions di Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-server-actions.md): 20 domande, Mid-Level - [Routing e Navigazione in Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-routing-navigation.md): 22 domande, Mid-Level - [API Routes di Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-api-routes.md): 20 domande, Mid-Level - [Metadata & SEO in Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-metadata-seo.md): 18 domande, Mid-Level - [Middleware e Auth in Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-middleware-auth.md): 22 domande, Mid-Level - [Testing React](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-testing.md): 20 domande, Mid-Level - [Zustand State Management](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/zustand-state-management.md): 18 domande, Mid-Level - [Error Boundaries & Error Handling](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-error-boundaries.md): 18 domande, Senior - [Advanced React Patterns](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/advanced-react-patterns.md): 20 domande, Senior - [Funzionalità avanzate di Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-advanced-features.md): 24 domande, Senior - [Deploy e Produzione con Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-deployment-production.md): 20 domande, Senior - [Architecture & Design Patterns](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-architecture-patterns.md): 22 domande, Senior - [React Server Components](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-server-components.md): 26 domande, Senior - [Internazionalizzazione di Next.js](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/nextjs-internationalization.md): 20 domande, Senior - [React Sicurezza & Best Practices](https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-security-best-practices.md): 22 domande, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/it/technologies/react-next/domande-colloquio/react-performance-optimization