Introduzione alla programmazione visuale

In base alla modalità con cui l’utente interagisce con il sistema, le interfacce utente possono essere classificate in: interfacce testuali ed interfacce grafiche.
Le interfacce testuali, dette anche interfacce a caratteri, le ricordiamo più o meno tutti, come il buon vecchio MS-DOS e la shell di Linux. Hanno fatto la storia dei computer, all’inizio erano tutti ad interfaccia testuale, rendendo l’uso stesso del computer poco accessibile al pubblico.
Le interfacce grafiche sono le odierne interfacce con cui interagiamo. Tutti quei oggetti che si muovono sullo schermo, hanno migliorato l’uso del computer, rendendolo accessibile a tutti e diffusissimo in tutto il mondo.
La differenza principale fra interfaccia testuale e visuale è la modalità con cui l’utente interagisce con il computer.

Nel primo caso l’utente interagisce solo con la tastiera, le istruzioni proposte a video possono variare nell’aspetto in modo molto limitato, il monitor viene visto come una matrice di celle con un determinato numero di righe e di colonne e l’inserimento dei dati è controllato dal programma.
Nel secondo caso l’utente interagisce attraverso vari strumenti come il mouse e la tastiera, il monitor è visto come una matrice di pixel caratterizzata da un certo numero di righe e di colonne (risoluzione), ogni carattere visualizzato può avere una propria dimensione e un proprio aspetto, il controllo del flusso del programma è deciso dall’utente.
In un’interfaccia utente grafica, l’interazione tra utente e sistema avviene grazie ad un sistema di gestione degli eventi. Qualsiasi interazione tra la macchina e l’esterno genera un evento che viene intercettato e gestito dal sistema operativo.
L’interfaccia utente grafica, principalmente, viene vista come una collezione di oggetti annidati, nel senso che saranno presenti oggetti che conterranno degli altri.
Occorre subito distinguere due tipi di oggetti di una GUI (Graphics Unit Interface): oggetti contenitori ed oggetti componenti.
Gli oggetti contenitori sono quelli all’interno dei quali è possibile posizionare e dimensionare altri oggetti (Finestre e Pannelli).
La Finestra è costituita da un’area che può contenere vari elementi. Può essere presente una barra del titolo, all’interno della quale ci sono i pulsanti che gestiscono la sua chiusura ed il suo ridimensionamento.
Il Pannello è costituito da un rettangolo, il cui perimetro può essere reso visibile o meno, così come il suo contenuto.
Gli oggetti componenti sono quelli che vengono inseriti all’interno degli oggetti contenitori (Label, Button, CheckBox, ecc…).
Una Label (etichetta) è una stringa di testo utilizzata per etichettare altri componenti o visualizzare una descrizione visibile nella GUI.
I Button (pulsanti) sono semplici componenti che avviano un’azione quando vengono premuti.
Una TextField (campo di testo) è costituita da una o più righe e consente di immettere testo al suo interno.