INTERFACCIA GRAFICA
Da DVG - Il Dizionario dei Videogiochi
L'interfaccia grafica (in inglese Graphical User Interface abbreviato GUI) è un paradigma di sviluppo che mira a consentire all'utente di interagire col computer manipolando graficamente degli oggetti, svincolandolo dall'obbligo di imparare una serie di comandi da impartire con la tastiera come invece avviene con le interfacce testuali command line interface (CLI). È lo strato di un'applicazione software che si occupa del dialogo con l'utente del sistema utilizzando un ambiente grafico.
L'interfaccia grafica nei sistemi operativi moderni è concepita come la metafora di un piano di lavoro rappresentato dallo schermo (detto scrivania o desktop), con le icone a rappresentare i file (di cui alcune a forma di cartellina per le directory) e le finestre a rappresentare le applicazioni.
Tale ambiente di lavoro, in cui si opera attraverso il puntatore comandato con il mouse, è stato concettualizzato nei laboratori Xerox (progetto Alto) e implementato per la prima volta nel 1981 dalla Xerox stessa nel costoso Xerox Star. In seguito, tale paradigma venne ripreso da Apple con il poco fortunato Apple Lisa, ma soprattutto con il rivoluzionario personal computer Macintosh nel 1984. La prima versione a colori della GUI venne introdotta da Commodore con il suo Amiga nel 1985.
La GUI, con la sua semplicità d'utilizzo, per anni ha contrastato le interfacce ostiche e complicate basate ancora sul vecchio principio della linea di comando (Command Line Interface), come UNIX e DOS. In seguito al successo del Macintosh e dell'Amiga, queste caratteristiche innovative sono state mutuate da Microsoft con la creazione del proprio sistema operativo Windows.
Attualmente tutti i sistemi operativi diffusi nel settore dei personal computer sono dotati di una GUI che opera secondo gli stessi principi di quella originariamente studiata da Xerox. Ciò ha causato una evoluzione significativa nell'interazione tra computer e utente: grazie all'interfaccia grafica è possibile compiere molti compiti comuni e complessi senza il bisogno di un'approfondita conoscenza del funzionamento del computer.
Implementazione di interfacce grafiche:
I vari framework grafici possono fornire diversi tipi di astrazioni ai programmatori che vogliono costruire interfacce grafiche. Tra queste una molto diffusa e molto comoda è quella del Modello ad eventi con delegati.
Modello ad eventi con delegati:
Modello ad eventi con delegati. Click me è la sorgente, in questo caso di tipo bottone, e ad essa è associata una coda di ascoltatori |
Consideriamo tre entità fondamentali:
- un controllo che funge da sorgente di eventi,
- dei consumatori, a cui il controllo trasmette gli eventi
- delle interfacce (nel senso più ampio del termine), ovvero delle regole di interazione tra ~oggetti~
Inoltre:
- ogni consumatore deve essere progettato in modo da implementare l'interfaccia (a tempo di programmazione)
- ogni consumatore si registra presso la sorgente, cioè dichiara di voler essere informato degli eventi da essa generati (a tempo di esecuzione)
- Ogni volta che la sorgente deve generare un evento, per ognuno dei consumatori registrati, gli comunica l'evento seguendo il protocollo descritto dall'interfaccia
Voci correlate
Traccia: • interfaccia_grafica