Higher Order Components in React by Matteo Ronchi
React è una libreria per realizzare applicazioni web interattive. La filosofia di React sposa la programmazione funzionale, il concetto di composizione è intimamente radicato nel cuore della libreria. In React esistono 2 macro categorie di componenti: stateful e stateless. La prima categoria è rappresentata da elementi che contengono logica applicativa, questi componenti spesso dipendono da elementi esterni per funzionare e possiedono un proprio stato. La seconda categoria è composta da componenti puri che ricevono tutti i dati e le API necessarie tramite attributi e generalmente non posseggono un proprio stato. Questo approccio porta spesso ad avere numerose funzionalità replicate in diversi componenti; gli Higher Order Component (Hoc) sono la naturale soluzione a questo problema e rappresentano un'alternativa ai mixins e all'ereditarietà in React. Un HoC astrae funzionalità dai componenti di un applicazione e permette di comporle dove necessario, rendendo più mantenibile il codice ed evitando duplicazioni. Durante la presentazione si implementerà concretamente questo pattern e se ne analizzeranno i benefici rispetto alle altre tecniche.