Razlika med AWT in Swingom

Java je programska oprema za razvoj aplikacij, neodvisna od platforme. Ponuja nabor programske opreme, ki se lahko uporablja za razvoj aplikacij. Ena takih programov je AWT (Abstract Window Toolkit). Gre za niz programskih vmesnikov, ki se uporabljajo za ustvarjanje komponent grafičnega uporabniškega vmesnika (GUI) in drugih storitev, potrebnih za GUI na Javi. Je del razredov Java Foundation. Olajša razvoj GUI-ja. AWT vključuje niz pripomočkov za okna, grafiko in uporabniški vmesnik. Ima tudi robustno obdelavo dogodkov, orodja za slikanje, upravitelja postavitve za prilagodljive postavitve oken. V tej temi bomo spoznali AWT vs Swing in njihove razlike

Swing je najnovejši nabor orodij, ki temelji na AWT. Swing daje programerju fleksibilnost neodvisnosti platforme. Za razliko od AWT programer lahko ustvari bolj posplošene predmete GUI z uporabo Swinga.

Pregled AWT : AWT se uporablja za podporo uporabniškega vmesnika v aplikaciji Java. Omogoča abstrakcijo na visoki ravni za program Java, saj skriva osnovne podrobnosti GUI. Ker je AWT api, zgrajen v operacijskem sistemu, ki zagotavlja grafični uporabniški vmesnik za Javo. Njegova komponenta je odvisna od osnovnega dela (kot je videz in občutek v tem operacijskem sistemu), da lahko upravlja s svojo funkcionalnostjo. Zato se te komponente pogosto imenujejo "težke" komponente.

Funkcije AWT vključujejo:

  • Bogat nabor komponent uporabniškega vmesnika.
  • Robustni model ravnanja z dogodki
  • Upravitelj postavitve za različne postavitve oken
  • Razredi prenosa podatkov podpirajo rezanje prek naravne platforme.

Pregled Swinga : Swing je zgrajen na AWT, je del Java Foundation Class. Swing temelji na Javi v celoti, zato je njegova platforma neodvisna. Uporablja se za ustvarjanje učinkovitejšega uporabniškega vmesnika kot AWT.

Značilnosti Swinga:

  • Vse funkcije AWT
  • Ponuja bogat nabor komponent višjega nivoja, kot so drevo, podokni z zavihki, polja s seznami itd.
  • Vtični videz in občutek.
  • Ni odvisnosti od vrstnikov.

Primerjava med osebami med AWT in Swingom (Infographics)

Spodaj je zgornjih 11 primerjav med AWT in Swingom:

Ključne razlike AWT in Swing:

Ker je AWT most med aplikacijo in osnovnim izvornim vmesnikom, lahko njegova implementacija v novem operacijskem sistemu vključuje veliko dela. Ker zahteva, da se znova razvije domači vrstnik. Uporaba izvornih vrstnikov omejuje funkcionalnost AWT. AWT ima dve ravni API-jev -

  • Ena ponuja osnovni splošni vmesnik med aplikacijo in matičnim OS.
  • Drugi grafični vmesnik GUI, ki ponuja zakulisane predmete, ki se poganjajo na platnu AWT.

Uporaba izvornih komponent omogoča hitro AWT. Tako izboljšuje njegovo delovanje. Tudi večina spletnih brskalnikov podpira AWT, za AWT Applets ni potreben vtičnik Java. Toda AWT ima manjši nabor komponent, zato morajo uporabniki napisati kodo po meri, da dobijo svoje komponente, ki temeljijo na AWT. AWT komponente ne podpirajo funkcij, kot so naslovna vrstica in menijske vrstice.

Swing je podaljšek AWT. Ni natančna zamenjava AWT. Zato ima AWT funkcije z razširljivostjo JAVA. Torej so vse komponente, ki so prisotne v AWT, prisotne tudi v Swingu. Toda Swing ne potrebuje vrstniškega programiranja, zato je platforma neodvisna in lahka. Prav tako Swing omogoča večjo paleto komponent.

Swing je zasnovana na modulu. Podpira priključitev za izvajanje po meri. Uporabnik lahko ustvari svojo lastno implementacijo, da preglasi privzeto izvedbo, ki temelji na Javi. Swing nudi tudi podporo mehanizmu izvajanja. Metoda posredne sestave omogoča, da se gugalnica odzove na spremembe izvajanja glede na aplikacijsko okolje. Swing podpira funkcije, kot so ikone in nasveti za orodja. Sonce je aktivno vključeno v razvoj Swinga, od takrat naprej swing dobi nove funkcije in postane boljši kot prej.

Večina spletnega brskalnika ne podpira nihanja. Tako je za swing treba imeti vtičnik Java. Nihanje je počasnejše v primerjavi z AWT. Ker komponente Swing upravljajo z lastnim slikanjem (namesto z uporabo izvornih API-jev, kot je DirectX v operacijskem sistemu Windows), se lahko to zgodi v grafičnih težavah.

Primerjalna tabela med AWT in Swing:

AWTSWING
AWT je kratica za Tool Window Toolkit.Swing je del Java Foundation Class (JFC) razredov.
AWT je odvisno od platforme. Njegova koda je v sistemu sistema, zato onemogoča neodvisnost platforme.Nihalne komponente so izdelane v JAVA. Tako postane platforma neodvisna.
AWT komponente so težke.Nihalne komponente so lahke.
AWT ne sledi MVC (Model View Controller).Swing temelji na MVC.
Za komponente AWT je potreben java.awt.packageKomponente nihaj zahtevajo javax.swing.package.
AWT nima podokna Jtable in Jtabbed.Swing ima podokno Jtable in Jtabbed.
AWT je od platforme odvisen, zato ne podpira zelo drugačnega videza in občutka.Gugalnice imajo lahko drugačen videz in občutek.
AWT zaseda več pomnilniškega prostora.Gugalnica zaseda manj pomnilnega prostora.
AWT je manj močan kot Swing.Swing je podaljšek AWT, zato so številne pomanjkljivosti odstranjene.
Look and Feel of AWT je odvisen od platforme.Izgled Swinga je neodvisen od osnovne platforme in operacijskega sistema.
AWT komponente so odvisne od naravne kode (vrstniki), da pravilno delujejo. Zato so te komponente „težke komponente“.Swing nima takšne odvisnosti. Zato so te komponente „komponente lahke teže“.

Zaključek:

Oba AWT vs Swing se uporabljata za ustvarjanje grafičnega uporabniškega vmesnika na Javi. Oba sta robustna in imata svoje prednosti in slabosti. Komponenta AWT je primerna za preprost razvoj aplikacij, ki je večinoma zasnovan za delovanje v enem OS. Medtem ko je swing najnovejši vmesnik, ki je v celoti zgrajen na Javi. Swing daje uporabniku svobodo kodiranja enkrat in se izvaja kjer koli. Ponuja tudi širši nabor komponent kot AWT. Popolnoma je odvisno od potreb uporabnika. Čeprav je AWT stari razvoj, ki se v AWT še vedno dogaja in postaja vse boljši. Če je zahteva bolj videz in občutek kot osnovni operacijski sistem, bi bila AWT boljša možnost. Če želite bolj prilagodljiv GUI, potem je dobro, da greste z njim.

Priporočeni članki

To je vodilo za največjo razliko med AWT in Swingom. Tukaj razpravljamo tudi o ključnih razlikah AWT vs Swing z infografiko in primerjalno tabelo. Za več informacij si lahko ogledate tudi naslednje članke -

  1. Java vs Ruby - katera je boljša?
  2. Python proti Scali - najboljše razlike
  3. Razlika med HTML5 in Flash
  4. WordPress vs Drupal
  5. Oznaka JavaFX
  6. Postavitve JavaFX
  7. Vrste in kako ustvariti grafikone JavaFx?
  8. Drsnik JavaFX
  9. Kako vnesti besedilo v JavaFX TextField?
  10. Konstruktorji in metode gumba JavaFx
  11. Najboljših 15 metod HBox-a v JavaFX-u