GUI står för grafiskt användargränssnitt, en term som inte bara används i Java utan på alla programmeringsspråk som stöder utvecklingen av GUI: er. Ett program grafiska användargränssnitt presenterar en lättanvänd visuell display för användaren. Den består av grafiska komponenter (t.ex. knappar, etiketter, fönster) genom vilka användaren kan interagera med sidan eller applikationen.
För att skapa grafiska användargränssnitt i Java använder du antingen Swing (äldre applikationer) eller JavaFX.
En GUI innehåller ett antal användargränssnittselement - vilket bara betyder alla element som visas när du arbetar i en applikation. Dessa kan inkludera:
Java har inkluderat Swing, ett API för att skapa gränssnitt, i sin Java Standard Edition sedan Java 1.2, eller 2007. Den är utformad med en modulär arkitektur så att element enkelt kan plug-and-play och kan anpassas. Det har länge varit det API som valts för Java-utvecklare när de skapade GUI: er.
JavaFX har också funnits länge - Sun Microsystems, som ägde Java innan den nuvarande ägaren Oracle, släppte den första versionen 2008, men den fick inte riktigt drag förrän Oracle köpte Java från Sun.
Oracle avser att så småningom ersätta Swing med JavaFX. Java 8, som släpptes 2014, var den första utgåvan som inkluderade JavaFX i kärndistributionen.
Om du är ny på Java bör du lära dig JavaFX snarare än Swing, även om du kanske måste förstå Swing eftersom så många applikationer innehåller det, och så många utvecklare använder fortfarande aktivt det.
JavaFX har en helt annan uppsättning grafiska komponenter såväl som en ny terminologi och har många funktioner som gränsar till webbprogrammering, till exempel stöd för Cascading Style Sheets (CSS), en webbkomponent för att bädda in en webbsida i en FX-applikation, och funktionaliteten för att spela multimediainnehåll på webben.
Om du är en applikationsutvecklare måste du beakta inte bara verktygen och programmeringswidgets som du kommer att använda för att skapa ditt GUI, men också vara medveten om användaren och hur han kommer att interagera med applikationen.
Är till exempel applikationen intuitiv och lätt att navigera? Kan din användare hitta vad han behöver på de förväntade platserna? Var konsekvent och förutsägbar om var du placerar saker - till exempel är användare bekanta med navigeringselement i de översta menyraden eller vänster sidorader. Att lägga till navigering i en höger sidofält eller på botten kommer bara att göra användarupplevelsen svårare.
Andra problem kan inkludera tillgängligheten och kraften hos vilken sökmekanism som helst, applikationens beteende när ett fel inträffar och naturligtvis applikationens allmänna estetik.
Användbarhet är ett område i sig självt, men när du har behärskat verktygen för att skapa gränssnitt kan du lära dig grunderna i användbarhet för att säkerställa att din applikation har en look-and-feel som gör den attraktiv och användbar för sina användare.