News

React: la libreria Javascript più utilizzata

React è la libreria Javascript open source per la creazione di interfacce utente interattive, creata dagli sviluppatori di Facebook.

Fondamentale per la realizzazione della news feed del social (il flusso di notizie che compare una volta effettuato il login), è servita anche per la creazione dell’interfaccia web di Instagram.

Trattandosi di una struttura destinata inizialmente a un social network, sempre in aggiornamento, è stata pensata come uno strumento agile e semplificato. Per questo il suo codice open source può essere modificato o migliorato facilmente, senza necessità di riscriverlo ad ogni utilizzo, riducibile a componenti più piccole sulle quali si può agire indipendentemente.

Cos’è un’interfaccia utente?

 Come suggerisce il termine, un’interfaccia utente (UI) è qualcosa che si interpone tra due facce, quella da cui parte un comando e quella che lo esegue. In linea teorica è un’interfaccia qualsiasi strumento con il quale facciamo fare un’azione a qualcosa: l’interruttore della luce, il telecomando del televisore; anche un traduttore può essere considerato un’interfaccia, un interprete, un computer (inteso come sistema operativo).

In informatica, è lo strumento attraverso il quale l’utente interagisce (si interfaccia, per l’appunto) con il computer; se consideriamo le facce come i terminali comunicanti di un sistema, l’interfaccia è lo strumento che permette la comunicazione di un sistema con l’altro.

Ne esistono due tipi:

  • interfaccia testuale (o terminale), dove la corrispondenza è tra un comando scritto e l’azione che compie il computer;
  • interfaccia grafica (GUI), che simula un piano di lavoro con oggetti virtuali, dove la corrispondenza è stabilita tra un’icona (immagine) e l’azione che le corrisponde, e che attiva l’azione in base ai movimenti del mouse.

In entrambi i casi, l’interfaccia, per essere efficiente, deve avere due caratteristiche:

chiarezza (una inequivocabile corrispondenza tra l’immagine e l’idea a cui rimanda); semplicità (nell’utilizzo).

Come funziona React?

 React agisce sul virtual DOM , una sorta di astrazione del DOM, una sua rappresentazione.

Lavorare sul virtual DOM significa poter intervenire sulle singole parti senza effettuare una rigenerazione dell’intero codice. Si riescono a creare così front end molto complessi in modo semplice, grazie all’aggregazione di component indipendenti: React effettua le modifiche sul virtual DOM e calcola la differenza tra il virtual DOM prima e dopo la modifica effettuata. Il risultato di questo confronto sarà ciò che dovrà essere modificato nel DOM reale.

React sfrutta il linguaggio di programmazione Javascript, e questo moltiplica i benefici del sistema:

  • in primo luogo, Javascript è il linguaggio di scripting più diffuso, utilizzato comunemente nella maggior parte di pagine e applicazioni web, in particolare per la creazione di effetti dinamici e interattivi;
  • proprio per la sua flessibilità, le funzioni di React possono essere applicate anche alle mobile App, in particolare attraverso React Native, il framework di applicazioni mobili open source sviluppato proprio per Android e iOS;
  • infine, React si serve di Redux, la libreria indipendente che attraverso uno unico “store“
    gestisce lo “state” di tutta la web app, al quale qualsiasi componente può accedervi, in modo
    da sempli9icare molto la condivisione dei dati attraverso i vari componenti, riducendo al minimo le
    interazioni con il database e velocizzando la reattività dell’app. L’intrinseca natura funzionale di React lo rende totalmente compatibile con Redux, la cui flessibilità lo completa perfettamente.

 

Oggi React è tra gli strumenti di realizzazione dei front end più diffusi e apprezzati, che può vantare una infinità di applicazioni e una community in costante crescita. Per le caratteristiche di flessibilità e adattabilità, che la contraddistinguono, è utilizzata da importanti e affermate aziende, come AirBnB, Netflix, Paypal e Uber.

La sua popolarità ha decretato la nascita e l’affermazione di una serie di altre librerie che si basano su principi e funzionalità simili. Queste sono in tutto o in parte assimilabili  a quelli di React, che le rendono, pertanto, destinate a un grande successo.

Per saperne di più contattaci qui