AWT i Swing
Programiranje u Javi znači da morate imati prave alate kako biste brzo i učinkovito završili projekt. Jedan od osnovnih alata je komponenta GUI (Graphic User Interface). To vam omogućuje jednostavno dodavanje grafičke komponente bez većine potrebnog programiranja. U ovoj kategoriji postoje dvije od kojih možete odabrati. Prvi je AWT (Abstract Window Toolkit), a drugi je zamah, koji se pojavio mnogo kasnije.
Oba ova oruđa imaju svoje vlastite pro i kontra koje ih čine prikladnima za različite vrste programskih potreba. AWT koristi mnogo nativnih naredbi platforme koja mu daje veliku brzinu. No, kako biste ga pretvorili za upotrebu u drugim platformama, morate promijeniti naredbe protutijelova. Swing s druge strane koristi čisti Java kod, što ga čini vrlo prijenosnim preko platformi po cijeni brzine i performansi.
Još jedna značajka zamaha je to što pokušava oponašati izgled i osjećaj OS-a na kojemu se pokreće, što ga čini sličnim prirodnom okruženju. AWT je pretučen jer koristi nativne naredbe; izgleda točno kako izgleda izvorni UI. Glavna prednost zamaha je ta da podržava puno više mogućnosti nego što AWT radi. Komponente poput alata i ikona nisu dostupne u AWT-u dok su u potpunosti upotrebljive u ljuljački. Dodatne značajke i čisti java dizajn ljuljačke, iako znači da ćete zahtijevati java plug-in kako bi program pokrenut, a većina preglednika danas već podržava AWT klase koja eliminira potrebu za dodatnim preuzimanjima.
Ukratko, ako biste željeli stvoriti jednostavne java applete onda biste mogli pronaći brzu i jednostavnu metodu izgradnje AWT-a koja će biti od velike pomoći. Ali ako želite stvoriti punu aplikaciju, možete pogledati u što vam ljuljačka može ponuditi. Poboljšani popis komponenata i prenosivost mogu se pokazati korisnijima.