In React, gli HOC (Higher-Order Components) o componenti di ordine superiore, sono funzioni avanzate utilizzate per riutilizzare la logica dei componenti. Un HOC prende un componente e restituisce un nuovo componente con nuove props o funzionalità aggiunte.
Gli HOC sono simili al pattern decorator o pipeline che consentono di modificare le proprietà o i comportamenti dei componenti. Questo riduce la duplicazione del codice e astrae la logica comune, mantenendo la separazione delle preoccupazioni.
Ad esempio, si può avere un componente di ordine superiore che gestisce i permessi utente. Questo HOC può avvolgere qualsiasi componente dell’applicazione e disabilitare le funzionalità se l’utente corrente non ha il permesso di utilizzarle. All’utente finale, appare come un singolo componente, ma in realtà si tratta di un componente avvolto con l’HOC dei permessi. Questo è solo un esempio di come gli HOC possono essere utilizzati per riutilizzare la logica in tutta l’applicazione.