Java je programovací jazyk na vysokej úrovni vyvinutý spoločnosťou Sun Microsystems. Java podporuje Object Oriented Programming, ktoré pomáha navrhovať a vyvíjať softvér pomocou objektov. Ak je program Java zostavený, prevedie sa na bajtkód. Tento bytecode interpretuje Java Virtual Machine (JVM) na akejkoľvek platforme. Preto je programovacím jazykom, ktorý môžu programátori písať raz a spustiť na akejkoľvek platforme. Java sa dá použiť na vývoj rôznych aplikácií, ako sú stolné, mobilné a webové aplikácie. Tento jazyk poskytuje nástroje na vytváranie bohatých grafických používateľských rozhraní (GUI). Dvaja z nich sú AWT a Swing. Tento článok popisuje rozdiel medzi AWT a Swing. kľúčový rozdiel medzi AWT a Swing je to AWT je pôvodná platforma Java závislá od platformy, grafiky a používateľského rozhrania, zatiaľ čo Swing je sada nástrojov GUI pre Java, ktorá je rozšírením pre AWT..
1. Prehľad a kľúčový rozdiel
2. Čo je AWT
3. Čo je Swing
4. Podobnosti medzi AWT a Swing
5. Porovnanie bok po boku - AWT vs Swing v tabuľkovej forme
6. Zhrnutie
Grafické používateľské rozhranie je rozhranie pre používateľov, ktoré poskytuje pokyny pre softvér na vykonávanie úloh. Pozostáva z rôznych grafických komponentov. Niektoré komponenty GUI sú okno, tlačidlo, kombinované pole, textová oblasť, zoznam a štítok. Pomocou týchto komponentov môže programátor vyvinúť interaktívne užívateľské rozhranie pre aplikáciu. GUI je založené na udalostiach. Kliknutie na tlačidlo, zatvorenie okna, napísanie niečoho do textového poľa sú príklady udalostí, ktoré sa môžu vyskytnúť v aplikácii založenej na grafickom používateľskom rozhraní. Mnoho aplikácií dnes obsahuje GUI. Mobilné aplikácie, systémy rezervácie leteniek, bankomaty majú bohaté grafické rozhranie, aby zákazníci mohli aplikáciu ľahko používať.
AWT znamená Abstraktné okno Toolkit. AWT vyžaduje na implementáciu funkcií natívny objekt OS. Preto sú komponenty AWT ťažké a vyžadujú viac pamäte. Vykonanie komponentov AWT tiež vyžaduje čas. Počet komponentov dostupných v AWT je minimálny. Na vývoj aplikácií GUI založených na AWT je potrebné importovať balík javax.awt.
Obrázok 01: AWT a Swing
Niektoré komponenty AWT sú tlačidlá, textové polia, rozbaľovacie polia, posuvníky, okno, rám, panel, štítky. Po vytvorení je možné ich umiestniť do kontajnera. Kontajner poskytuje priestor na načítanie komponentov. AWT nepodporuje zásuvný vzhľad a dojem. Preto aplikácia AWT vyvinutá v jednom operačnom systéme nemusí vyzerať rovnako v inom operačnom systéme.
Swing je súprava nástrojov widgetu GUI pre Javu. Je súčasťou Oracle Foundation Classes (JFC) spoločnosti Oracle. Je to aplikačné programovacie rozhranie na vytváranie GUI pre Java aplikácie. Je postavený na rozhraní API AWT. Swing bol vyvinutý tak, aby poskytoval flexibilnejšie a sofistikovanejšie komponenty ako AWT. Swing obsahuje základné komponenty, ako sú štítky, textové polia, tlačidlá. Obsahuje aj pokročilejšie komponenty. Niektoré z nich sú stromy, tabuľky, zoznamy, posuvné tabule a tabelátory. Ak programátor potrebuje implementovať aplikáciu Swing, je potrebné importovať balík javax.swing. Balík poskytuje triedy pre rozhranie Java Swing API, ako je JButton, JRadioButton, JTextField, JCheckbox atď..
Komponenty Swing nemajú kód špecifický pre platformu. Preto je Swing nezávislý od platformy. Na rozdiel od AWT, Swing nevyžaduje natívne OS volania na zostavenie komponentov. JVM je zodpovedný za vyvolanie natívnych metód. Komponenty Swing sú ľahké. Potrebné miesto v pamäti je tiež minimálne. Toto je významný faktor na rýchlejšie spúšťanie aplikácií založených na technológii Swing. Vo vývoji aplikácií je Model, View, Controller (MVC) bežným návrhovým vzorom. Model predstavuje údaje. Pohľad predstavuje prezentáciu, zatiaľ čo Controller je rozhraním medzi Modelom a Pohľadom. Swing sleduje tento vzorec. Swing podporuje zásuvný vzhľad a dojem. Celkovo je výkonnejší ako AWT.
AWT vs Swing | |
AWT je pôvodná platforma Java závislá na platforme okien, grafiky a widgetov používateľského rozhrania predchádzajúca Swing. | Swing je sada nástrojov GUI widget pre Java, ktorá je súčasťou Oracle Foundation Class (JFC) spoločnosti Oracle.. |
Závislosť na platforme | |
Komponenty AWT závisia od platformy. | Komponenty Swing sú nezávislé od platformy. |
Počet komponentov | |
AWT obsahuje menej komponentov. | Swing má vyšší počet komponentov. |
súčasti | |
Komponenty AWT sú ťažké. | Komponenty Swing sú ľahké. |
MVC | |
AWT nerešpektuje MVC. | Swing nasleduje MVC. |
rýchlosť | |
AWT nie je rýchly ako Swing. | Swing je rýchlejší ako AWT. |
Požadovaný pamäťový priestor | |
Komponenty AWT vyžadujú viac pamäte. | Komponenty Swing vyžadujú menej miesta v pamäti. |
Požadovaný balík | |
AWT vyžaduje import balíka javax.awt. | Swing vyžaduje import balíka javax.swing. |
Zásuvný vzhľad a dojem | |
AWT nepodporuje zásuvný vzhľad a dojem. | Swing poskytuje zásuvný vzhľad a dojem. |
V tomto článku sa diskutuje o dvoch nástrojoch na návrh grafického používateľského rozhrania, ktoré sú AWT a Swing. Rozdiel medzi AWT a Swing spočíva v tom, že AWT je pôvodná platforma Java závislá na platforme okien, grafiky a používateľského rozhrania, zatiaľ čo Swing je sada nástrojov GUI pre Java, ktorá je rozšírením pre AWT. Swing poskytuje v porovnaní s AWT bohatšie funkcie. Vzhľad grafického používateľského rozhrania vytvoreného pomocou funkcie Swing vyzerá krajšie ako grafické používateľské rozhranie s AWT. Na rozdiel od AWT, Swing podporuje zapájateľný vzhľad a dojem a zvyšuje použiteľnosť aplikácie.
Môžete si stiahnuť verziu tohto článku vo formáte PDF a použiť ju na účely offline podľa citácie. Stiahnite si verziu PDF tu: Rozdiel medzi AWT a Swing
1.tutorialspoint.com. „Prehľad SWING“. Bod. K dispozícii tu
2. „Swing (Java)“. Wikipedia, Wikimedia Foundation, 24. januára 2018. K dispozícii tu
3. „Súprava nástrojov abstraktného okna“. Wikipedia, Wikimedia Foundation, 22. januára 2018. K dispozícii tu
4. „Výukový program Java Swing - javatpoint.“ K dispozícii tu
5.tutorialspoint.com. „Prehľad AWT.“ Bod. K dispozícii tu
1.'AWTSwingClassHierarchy 'Autor: Jakub Závěrka - Jakub Závěrka - vlastná práca, (Public Domain), na Commons Wikimedia