Peamine erinevus – AWT vs Swing
Java on kõrgetasemeline programmeerimiskeel, mille on välja töötanud Sun Microsystems. Java toetab objektorienteeritud programmeerimist, mis aitab projekteerida ja arendada objekte kasutades tarkvara. Java programmi kompileerimisel teisendatakse see baitkoodiks. Java virtuaalmasin (JVM) tõlgendab seda baitkoodi mis tahes platvormil. Seetõttu on see programmeerimiskeel, mida programmeerijad saavad ühe korra kirjutada ja mis tahes platvormil töötada. Java abil saab arendada mitmesuguseid rakendusi, nagu töölaua-, mobiili- ja veebirakendused. Keel pakub tööriistakomplekte rikkalike graafiliste kasutajaliideste (GUI) loomiseks. Kaks neist on AWT ja Swing. Selles artiklis käsitletakse erinevust AWT ja Swingi vahel. Peamine erinevus AWT ja Swingi vahel on see, et AWT on Java algsest platvormist sõltuv akende, graafika ja kasutajaliidese vidinate tööriistakomplekt, samas kui Swing on Java jaoks mõeldud GUI vidinate tööriistakomplekt, mis on AWT laiendus.
Mis on AWT?
Graafiline kasutajaliides on kasutajaliides, mis annab tarkvarale juhiseid ülesannete täitmiseks. See koosneb erinevatest graafilistest komponentidest. Mõned GUI komponendid on aken, nupp, liitkast, tekstiala, loendikast ja silt. Neid komponente kasutades saab programmeerija välja töötada rakendusele interaktiivse kasutajaliidese. GUI põhineb sündmustel. Nupuklõps, akna sulgemine, millegi tekstikasti tippimine on mõned näited sündmustest, mis võivad graafilise kasutajaliidese põhises rakenduses aset leida. Tänapäeval sisaldavad paljud rakendused GUI-sid. Mobiilirakendustel, lennupiletite broneerimissüsteemidel, pangaautomaatidel on rikkalikud graafilised liidesed, mis võimaldavad klientidel rakendust hõlps alt kasutada.
AWT tähendab Abstract Window Toolkit. AWT nõuab funktsioonide rakendamiseks natiivset OS-i objekti. Seetõttu on AWT komponendid rasked ja vajavad rohkem mäluruumi. AWT-komponentide käivitamine võtab samuti aega. AWT-s saadaolevate komponentide arv on minimaalne. AWT-põhiste GUI rakenduste arendamiseks on vaja importida pakett javax.awt.
Joonis 01: AWT ja Swing
Mõned AWT komponendid on nupud, tekstiväljad, rippmenüükastid, kerimisribad, aken, raam, paneel, sildid. Pärast objektide loomist saab need konteinerisse panna. Konteiner annab ruumi komponentide laadimiseks. AWT ei toeta ühendatavat välimust ja tunnetust. Seetõttu ei pruugi ühes operatsioonisüsteemis arendatud AWT-rakendus teises operatsioonisüsteemis samasugune välja näha.
Mis on Swing?
Swing on Java jaoks mõeldud GUI-vidinate tööriistakomplekt. See on osa Oracle'i Java Foundation Classesist (JFC). See on rakenduste programmeerimisliides Java rakenduste GUI loomiseks. See on üles ehitatud AWT API-le. Swing töötati välja selleks, et pakkuda paindlikumaid ja keerukamaid komponente kui AWT. Swing sisaldab põhikomponente, nagu sildid, tekstikastid, nupud. See sisaldab ka täiustatud komponente. Mõned neist on puud, tabelid, loendid, kerimispaanid ja vahekaartidega paanid. Kui programmeerijal on vaja Swing rakendust juurutada, on vaja importida pakett javax.swing. Pakett sisaldab Java Swing API klasse, nagu JButton, JRadioButton, JTextField, JCheckbox jne.
Swingi komponentidel ei ole platvormipõhist koodi. Seetõttu on Swing platvormist sõltumatu. Erinev alt AWT-st ei vaja Swing komponentide loomiseks natiivseid OS-i kõnesid. JVM vastutab natiivsete meetodite käivitamise eest. Swingi komponendid on kerged. Vajalik mäluruum on samuti minimaalne. See on märkimisväärne tegur Swing-põhiste rakenduste kiiremaks käivitamiseks. Rakenduste arendamisel on mudel, vaade, kontroller (MVC) tavaline disainimuster. Mudel esindab andmeid. Vaade esindab esitlust, kontroller aga mudeli ja vaate liides. Swing järgib seda mustrit. Swing toetab ühendatavat välimust ja tunnet. Üldiselt on see võimsam kui AWT.
Milline on AWT ja Swingi sarnasus?
Mõlemad on Java-põhised tööriistakomplektid graafilise kasutajaliidese loomiseks
Mis vahe on AWT ja Swingi vahel?
AWT vs Swing |
|
AWT on Java algne platvormist sõltuv akende, graafika ja kasutajaliidese vidinate tööriistakomplekt, mis eelneb Swingile. | Swing on Java jaoks mõeldud GUI-vidinate tööriistakomplekt, mis on osa Oracle'i Java Foundation Classist (JFC). |
Platvormi sõltuvus | |
AWT komponendid sõltuvad platvormist. | Swingi komponendid on platvormist sõltumatud. |
Komponentide arv | |
AWT sisaldab vähem komponente. | Swingil on suurem arv komponente. |
Komponendid | |
AWT komponendid on rasked. | Swingi komponendid on kerged. |
MVC | |
AWT ei järgi MVC-d. | Swing järgneb MVC-le. |
Kiirus | |
AWT pole kiire kui Swing. | Swing on kiirem kui AWT. |
Nõutav mäluruum | |
AWT komponendid nõuavad rohkem mäluruumi. | Swingi komponendid nõuavad vähem mäluruumi. |
Nõutav pakett | |
AWT nõuab paketi javax.awt importimist. | Swing nõuab paketi javax.swing importimist. |
Ühistav välimus ja tunne | |
AWT ei toeta ühendatavat välimust ja tunnetust. | Swing pakub ühendatavat välimust ja tunnet. |
Kokkuvõte – AWT vs Swing
Selles artiklis käsitleti kahte graafilise kasutajaliidese kujundamise tööriista, milleks on AWT ja Swing. AWT ja Swingi erinevus seisneb selles, et AWT on Java algsest platvormist sõltuv akende, graafika ja kasutajaliidese vidinate tööriistakomplekt, samas kui Swing on Java jaoks mõeldud GUI vidina tööriistakomplekt, mis on AWT laiendus. Swing pakub AWT-ga võrreldes rikkalikumaid funktsioone. Swingi abil ehitatud GUI välimus näeb kenam välja kui AWT-ga GUI. Erinev alt AWT-st toetab Swing ühendatavat välimust ja tunnet ning suurendab rakenduse kasutatavust.
Laadige alla AWT vs Swing PDF-versioon
Saate alla laadida selle artikli PDF-versiooni ja kasutada seda võrguühenduseta kasutamiseks vastav alt tsitaadi märkusele. Laadige PDF-versioon alla siit: AWT ja Swingi erinevus