Java er et høyt programmeringsspråk utviklet av Sun Microsystems. Java støtter Object Oriented Programming som bidrar til å designe og utvikle en programvare ved hjelp av objekter. Når Java-programmet er kompilert, konverteres det til en bytekode. At bytecode tolkes av Java Virtual Machine (JVM) på hvilken som helst plattform.Derfor er det et programmeringsspråk som programmerere kan skrive en gang og kjøre på hvilken som helst plattform. Java kan brukes til å utvikle en rekke applikasjoner som desktop-, mobil- og webapplikasjoner. Språket gir verktøy for å lage rike grafiske brukergrensesnitt (GUI). To av dem er AWT og Swing. Denne artikkelen diskuterer forskjellen mellom AWT og Swing. De nøkkelforskjell mellom AWT og Swing er det AWT er Javas originale plattformavhengige vinduer, grafikk og brukergrensesnitt widget verktøykasse mens Swing er en GUI widget verktøykasse for Java som er en forlengelse for AWT.
1. Oversikt og nøkkelforskjell
2. Hva er AWT
3. Hva er Swing
4. Likheter mellom AWT og Swing
5. Side ved side-sammenligning - AWT vs Swing i tabellform
6. Sammendrag
Et grafisk brukergrensesnitt er et grensesnitt for brukere å gi instruksjoner for programvaren for å utføre oppgaver. Den består av ulike grafiske komponenter. Noen GUI-komponenter er vindu, knapp, kombinationsboks, tekstområde, listeboks og etikett. Ved hjelp av disse komponentene kan programmereren utvikle et interaktivt brukergrensesnitt for applikasjonen. En GUI er basert på hendelser. Knappeklikk, lukking av vinduet, skrive noe i tekstboksen er noen eksempler på hendelser som kan forekomme i et grafisk brukergrensesnitt basert program. I dag inneholder mange applikasjoner GUIer. Mobilapplikasjoner, Billettserveringssystemer, Automatiserte tellermaskiner har rike grafiske grensesnitt for at brukerne enkelt kan bruke applikasjonen.
AWT står for Abstract Window Toolkit. AWT krever et opprinnelig OS-objekt for å implementere funksjonalitetene. Derfor er AWT-komponentene tungvektige og krever mer minneplass. AWT-komponenter tar også tid til å utføre. Antall komponenter tilgjengelig i AWT er minimum. Det er nødvendig å importere javax.awt-pakken for å utvikle AWT-baserte GUI-applikasjoner.
Figur 01: AWT og Swing
Noen AWT-komponenter er knapp, tekstfelt, drop-down-bokser, rullefelt, vindu, ramme, panel, etiketter. Etter å ha opprettet objektene, kan de plasseres i en beholder. En beholder gir plass til komponenter å laste. AWT støtter ikke pluggbar utseende. Derfor kan et AWT-program utviklet i ett operativsystem, ikke se det samme ut i et annet operativsystem.
Swing er en GUI widget verktøykasse for Java. Det er en del av Oracle's Java Foundation Classes (JFC). Det er et applikasjonsprogrammeringsgrensesnitt for å bygge GUI for Java-applikasjoner. Den er bygget på toppen av AWT API. Swing ble utviklet for å gi mer fleksible og sofistikerte komponenter enn AWT. Swing inneholder grunnleggende komponenter som etiketter, tekstbokser, knapper. Den inneholder også mer avanserte komponenter. Noen av dem er trær, tabeller, lister, rullepaneler og faneblad. Hvis programmereren trenger å implementere en Swing-applikasjon, er det nødvendig å importere javax.swing-pakken. Pakken inneholder klasser for Java Swing API som JButton, JRadioButton, JTextField, JCheckbox osv..
Swing-komponenter har ikke en plattformspesifikk kode. Derfor er Swing plattform uavhengig. I motsetning til AWT krever Swing ikke native OS-anrop for å bygge komponenter. JVM er ansvarlig for å påberope seg de innfødte metodene. Swing-komponentene er lette. Det nødvendige minnet er også minimum. Dette er en betydelig faktor for å kjøre Swing-baserte applikasjoner raskere. I applikasjonsutvikling er modell, visning, kontroller (MVC) et vanlig designmønster. Modellen representerer data. Visningen representerer presentasjonen mens Controller er grensesnittet mellom modell og visning. Swing følger dette mønsteret. Swing støtter pluggable utseende og følelse. Samlet sett er det kraftigere enn AWT.
AWT vs Swing | |
AWT er Javas originale plattformavhengige vinduer, grafikk og brukergrensesnitt widget verktøykasse før Swing. | Swing er en GUI widget verktøykasse for Java som er en del av Oracle's Java Foundation Class (JFC). |
Plattformavhengighet | |
AWT-komponenter er plattformavhengige. | Swing komponenter er plattform uavhengig. |
Antall komponenter | |
AWT inneholder mindre antall komponenter. | Swing har et høyere antall komponenter. |
komponenter | |
AWT-komponenter er tungvektige. | Swing komponenter er lette. |
MVC | |
AWT følger ikke MVC. | Swing følger MVC. |
Hastighet | |
AWT er ikke rask som Swing. | Swing er raskere enn AWT. |
Nødvendig minneplass | |
AWT-komponenter krever mer minneplass. | Swing-komponenter krever mindre minneplass. |
Påkrevd pakke | |
AWT krever import av javax.awt pakke. | Swing krever import av javax.swing-pakken. |
Pluggable Look and Feel | |
AWT støtter ikke pluggbar utseende. | Swing gir et pluggbart utseende. |
Denne artikkelen diskuterte to grafiske brukergrensesnitt designe verktøy som er AWT og Swing. Forskjellen mellom AWT og Swing er at AWT er Javas originale plattformavhengige windowing-, grafikk- og brukergrensesnitt widget verktøykasse mens Swing er en GUI widget verktøykasse for Java, som er en utvidelse for AWT. Swing gir rikere funksjoner som sammenligner med AWT. Utseendet på GUI bygget ved hjelp av Swing ser bedre ut enn GUI med AWT. I motsetning til AWT støtter Swing det pluggbare utseendet og øker brukbarheten av applikasjonen.
Du kan laste ned PDF-versjonen av denne artikkelen og bruke den til nettbasert bruk som per sitatnotat. Vennligst last ned PDF-versjonen her: Forskjellen mellom AWT og Swing
1.tutorialspoint.com. "SWING Oversikt." Poenget. Tilgjengelig her
2. "Swing (Java)." Wikipedia, Wikimedia Foundation, 24. januar 2018. Tilgjengelig her
3. "Abstract Window Toolkit." Wikipedia, Wikimedia Foundation, 22. januar 2018. Tilgjengelig her
4. "Java Swing Tutorial - javatpoint." Tilgjengelig her
5.tutorialspoint.com. "AWT Oversikt." Poenget. Tilgjengelig her
1.AWTSwingClassHierarchy 'Av Jakub Závěrka - Jakub Závěrka - eget arbeid, (offentlig domene) via Commons Wikimedia