La GUI sta per Graphical User Interface, un termine usato non solo in Java ma in tutti i linguaggi di programmazione che supportano lo sviluppo di GUI. L'interfaccia utente grafica di un programma presenta all'utente una visualizzazione visiva di facile utilizzo. È costituito da componenti grafici (ad esempio pulsanti, etichette, finestre) attraverso i quali l'utente può interagire con la pagina o l'applicazione.
Per creare interfacce utente grafiche in Java, utilizzare Swing (applicazioni precedenti) o JavaFX.
Una GUI include una gamma di elementi dell'interfaccia utente, il che significa solo tutti gli elementi visualizzati quando si lavora in un'applicazione. Questi possono includere:
Java ha incluso Swing, un'API per la creazione di GUI, nella sua Java Standard Edition da Java 1.2 o 2007. È progettato con un'architettura modulare in modo che gli elementi siano facilmente plug-and-play e possano essere personalizzati. È stata a lungo l'API preferita dagli sviluppatori Java durante la creazione di GUI.
Anche JavaFX è in circolazione da molto tempo: Sun Microsystems, che possedeva Java prima dell'attuale proprietario Oracle, ha rilasciato la prima versione nel 2008, ma non ha ottenuto molto successo fino a quando Oracle non ha acquistato Java da Sun.
L'intenzione di Oracle è quella di sostituire Swing con JavaFX. Java 8, rilasciato nel 2014, è stato il primo a includere JavaFX nella distribuzione core.
Se non conosci Java, dovresti imparare JavaFX piuttosto che Swing, anche se potresti aver bisogno di capire Swing perché così tante applicazioni lo incorporano e così tanti sviluppatori lo stanno ancora attivamente utilizzando.
JavaFX presenta un set completamente diverso di componenti grafici, nonché una nuova terminologia e ha molte funzionalità che si interfacciano con la programmazione Web, come il supporto per Cascading Style Sheets (CSS), un componente Web per incorporare una pagina Web all'interno di un'applicazione FX, e la funzionalità per riprodurre contenuti multimediali Web.
Se sei uno sviluppatore di applicazioni, devi considerare non solo gli strumenti e i widget di programmazione che utilizzerai per creare la tua GUI, ma anche essere consapevole dell'utente e di come interagirà con l'applicazione.
Ad esempio, l'applicazione è intuitiva e facile da navigare? Il tuo utente può trovare ciò di cui ha bisogno nei luoghi previsti? Sii coerente e prevedibile su dove posizionare le cose, ad esempio gli utenti hanno familiarità con gli elementi di navigazione nelle barre dei menu in alto o nelle barre laterali di sinistra. L'aggiunta della navigazione nella barra laterale destra o in basso renderà l'esperienza dell'utente più difficile.
Altri problemi potrebbero includere la disponibilità e la potenza di qualsiasi meccanismo di ricerca, il comportamento dell'applicazione quando si verifica un errore e, naturalmente, l'estetica generale dell'applicazione.
L'usabilità è un campo in sé e per sé, ma una volta padroneggiati gli strumenti per la creazione di GUI, apprendi le basi dell'usabilità per assicurarti che la tua applicazione abbia un aspetto grafico che la renderà attraente e utile per i suoi utenti.