Il nuovo paradigma di programmazione, Reactive Programming, ormai introdotto in diversi contesti di sviluppo come Angular, cambierà il modo di sviluppare e farà astrarre moltissimi concetti ora di fatto statici.
Dati asincroni
Per illustrarlo in poche parole, Reactive Programming vuol dire programmare facendo uso di flussi di dati asincroni. In uno scenario che non è nuovo ai Front-End Developer i click in una pagina web rappresentano eventi oppure , nel mondo Reactive, un flusso asincrono in cui l’evento insiste e che può essere osservato al fine di reagire con azioni determinate.
Puoi creare flussi di dati ( data streams ) di qualsiasi cosa: variabili, input utente, proprietà, cache, strutture..ecc. Puoi quindi osservare cosa accade e reagire in modo coerente.
I flussi (streams ) sono centrali nelle tecnologie Reactive come RxJS perché possono essere, oltre che creati, combinati tra di loro e filtrati. In buona sostanza un flusso può usato come input per un altro flusso ed anche, flussi multipli posso essere combinati come input oppure può essere effettuato un merge. Inoltre ai flussi possono essere applicati filtri al fine, magari, di recuperare solo gli eventi che ci interessano ed infine i valori di un flusso possono essere mappati su un altro flusso.
Conclusioni
Lo scenario che ci si apre davanti è incredibile, e vi consigliamo la visione del video Youtube dove si illustra tutto in 30 minuti. Già sono presenti su Github le principali implementazioni Reactive in diversi linguaggi di programmazione ed il framework Angular ne fa uso per lo sviluppo di Web Application. Parole come data streams, Observable e Promise diverranno sempre più frequenti e le tratteremo in futuri articoli.
Glue Labs
Esperti di soluzioni Web, abbiamo dedicato una parte del nostro corso Angular agli aspetti di Reactive Programming, inoltre lavoriamo su ogni tuo progetto sfruttando al massimo ogni nuova tecnologia. Contattaci per iniziare a lavorare insieme!