Li utilizziamo quotidianamente. Sullo smartphone e sul tablet, sul computer o con un browser. Sono pochi, però, quelli che sanno esattamente cosa siano. Quando si parla di widget nell'ambito della programmazione, ci si riferisce a degli elementi dell'interfaccia grafica utente che permettono di interagire con le applicazioni e il sistema operativo. I widget mostrano informazioni – come nel caso, ad esempio, del widget meteo – e invitano l'utente a compiere un determinato insieme di operazioni. Un widget tipico può contenere dei pulsanti, finestre di dialogo, finestre pop-up e di selezione e altri elementi grafici.
Nel variegato mondo del web 2.0, dunque, quando si parla di widget ci si riferisce a delle piccole applicazioni che permettono di accedere, in maniera più veloce e funzionale, ad applicazioni più grandi o parti di essa (il widget meteo, ad esempio, permette di visualizzare la temperatura e la situazione meteo attuale, mentre per le previsioni estese si sarà comunque costretti ad accedere all'applicazione).
I widget sono delle applicazioni?
Come si è appena visto, widget e app non sono esattamente la stessa cosa, anche se possono essere considerati come degli “oggetti” affini. Nel mondo mobile, ad esempio, si è portati a pensare ai widget e alle app come elementi che migliorano l'esperienza d'utilizzo dell'utente, anche se in realtà non è esattamente così: i widget possono essere paragonate a delle “finestre sul cortile” che permettono di visualizzare solamente una porzione del mondo circostante; le app, invece, possono essere paragonate al “mondo circostante” e richiedono all'utente un'interazione più “approfondita”.
I widget per il desktop
Alcuni widget sono ideati e sviluppati per essere visualizzati direttamente sulla scrivania del proprio sistema operativo. “Nati” con OS X e successivamente diffusi sia su Windows (inrtodotti con Vista) sia su varie distribuzioni Linux, i widget per il desktop sono piccole applicazioni che forniscono specifiche informazioni all'utente di carattere funzionale (le temperature del processore o della GPU, ad esempio) o di svago.
Affinché i widget possano essere visualizzati, il sistema operativo dovrà essere dotato di un “widget engine” (letteralmente “motore per i widget”) che li gestisca e selezioni le informazioni all'interno di programmi più grandi: gli utenti Mac, ad esempio, saranno più che familiari con la Dashboard, il motore per widget nativo dei sistemi OS X. Dal 2004 al 2001 Google ha rilasciato un proprio widget engine (chiamato Google desktop) che permetteva di cercare messaggi e indirizzi di posta elettronica, file pagine web e altro all'interno del proprio computer.
I web widget
L'evoluzione nel campo dei widget ha portato allo sviluppo dei cosiddetti web widget, ovvero delle porzioni di codice che, inserite all'interno di una pagina del portale o sito web, possono fornire informazioni aggiuntive all'internauta. I widget per il web funzionano come mini-applicazioni utili, ad esempio, per fornire all'utente un motore di ricerca interno al portale, oppure per visualizzare gli ultimi articoli inseriti nel sito o, ancora, la lista degli amici (o fan) su Facebook.
I widget per il web non richiedono grandi conoscenze o capacità informatica da parte di chi li usa (sia lato utente, sia lato webmaster): tutto ciò che si dovrà fare, infatti, sarà copiare il codice e inserirlo all'interno della pagina web. Il widget sarà hostato sul server dello sviluppatore, potendo essere comunque utilizzato dagli utenti di qualunque sito web.
I widget per smartphone e tablet
Negli ultimi anni i widget hanno trovato ampio utilizzo nell'universo mobile: sia Android sia iOS hanno decine e decine di widget per personalizzare uno dei “desktop” virtuali a disposizione dell'utente. I widget mobili si dividono in categorie caratterizzate dalla tipologia di informazione visualizzata.
-
Widget di informazione. Questa tipologia di widget permette solitamente di visualizzare poche, cruciali, informazioni e di monitorarne le variazioni nel corso del tempo. Toccando il widget, nella maggior parte dei casi, si avrà accesso all'applicazione a esso collegata. Il widget meteo è, con ogni probabilità, l'esempio più tipico di widget informativo
-
Widget di collezioni. Come lascia intuire il nome, si tratta di widget che raccolgono e mostrano una moltitudine di elementi simili per tipologia ed origine. I collection widget possono essere utilizzati per accedere e visualizzare una galleria fotografica, oppure per accedere con facilità e immediatezza alla casella della posta elettronica in arrivo. Widget di questo tipo permettono, solitamente, di navigare all'interno della collezione e accedere ad ogni singolo elemento che ne faccia parte
-
Widget di controllo. Lo scopo principale di questa categoria di widget è fornire all'utente degli strumenti che consentano di controllare alcune funzionalità del dispositivo senza la necessità di accedere direttamente all'applicazione principale. Grazie ai widget di controllo, ad esempio, sarà possibile attivare e disattivare la connessione dati, il GPS e il Wi-Fi senza dover accedere alle impostazioni del dispositivo
-
Widget ibridi. Anche in questo caso, il nome aiuta a capire la natura e la funzionalità dei widget in questione. I widget ibridi raccolgono, solitamente, elementi caratterizzanti le tre tipologie appena descritte e le uniscono in un unico “prodotto”. Un widget legato a un'applicazione musicale, ad esempio, permette di conoscere informazioni sullo stato dell'applicazione musicale stessa (quale canzone è in riproduzione e lo stato di avanzamento) e controllarne alcune funzionalità (mettere in pausa la riproduzione, passare alla canzone successiva o tornare alla precedente)