Klíčový rozdíl - AWT vs Swing
Java je programovací jazyk na vysoké úrovni vyvinutý společností Sun Microsystems. Java podporuje objektově orientované programování, které pomáhá navrhovat a vyvíjet software pomocí objektů. Když je program Java kompilován, je převeden na bytecode. Tento bytecode je interpretován Java Virtual Machine (JVM) na libovolné platformě. Jedná se tedy o programovací jazyk, který mohou programátoři jednou napsat a spustit na libovolné platformě. Java může být použita k vývoji různých aplikací, jako jsou desktopové, mobilní a webové aplikace. Jazyk poskytuje sady nástrojů pro vytváření bohatých grafických uživatelských rozhraní (GUI). Dva z nich jsou AWT a Swing. Tento článek pojednává o rozdílech mezi AWT a Swing. Klíčový rozdíl mezi AWT a Swing spočívá v tom, že AWT je původní okno, grafika,a sada nástrojů pro widgety uživatelského rozhraní, zatímco Swing je sada nástrojů pro widgety GUI pro Javu, která je rozšířením pro AWT.
OBSAH
1. Přehled a klíčový rozdíl
2. Co je AWT
3. Co je Swing
4. Podobnosti mezi AWT a Swing
5. Porovnání vedle sebe - AWT vs Swing v tabulkové formě
6. Shrnutí
Co je AWT?
Grafické uživatelské rozhraní je rozhraní, které uživatelům poskytuje pokyny pro software k provádění úkolů. Skládá se z různých grafických komponent. Některé komponenty grafického uživatelského rozhraní jsou okno, tlačítko, pole se seznamem, textová oblast, seznam a štítek. Pomocí těchto komponent může programátor vyvinout interaktivní uživatelské rozhraní pro aplikaci. GUI je založeno na událostech. Klepnutí na tlačítko, zavření okna, psaní něčeho do textového pole jsou některé příklady událostí, ke kterým může dojít v aplikaci založené na grafickém uživatelském rozhraní. Dnes mnoho aplikací obsahuje GUI. Mobilní aplikace, rezervační systémy letenek, bankomaty mají bohatá grafická rozhraní, aby zákazníci mohli aplikaci snadno používat.
AWT znamená Abstract Window Toolkit. AWT vyžaduje k implementaci funkcí nativní objekt OS. Proto jsou komponenty AWT těžké a vyžadují více místa v paměti. Komponenty AWT také potřebují čas na provedení. Počet komponent dostupných v AWT je minimální. Pro vývoj aplikací GUI založených na AWT je nutné importovat balíček javax.awt.
Obrázek 01: AWT a Swing
Některé komponenty AWT jsou tlačítko, textová pole, rozevírací pole, posuvníky, okno, rám, panel, štítky. Po vytvoření mohou být objekty umístěny do kontejneru. Kontejner poskytuje prostor pro načtení komponent. AWT nepodporuje připojitelný vzhled a chování. Proto aplikace AWT vyvinutá v jednom operačním systému nemusí vypadat stejně v jiném operačním systému.
Co je to Swing?
Swing je sada nástrojů pro GUI pro Java. Je součástí Oracle Java Class Classes (JFC). Jedná se o aplikační programovací rozhraní pro vytváření grafického uživatelského rozhraní pro aplikace Java. Je postaven na AWT API. Swing byl vyvinut, aby poskytoval flexibilnější a sofistikovanější komponenty než AWT. Swing obsahuje základní komponenty, jako jsou štítky, textová pole, tlačítka. Obsahuje také pokročilejší komponenty. Některé z nich jsou stromy, tabulky, seznamy, rolovací podokna a podokna s kartami. Pokud programátor potřebuje implementovat aplikaci Swing, je nutné importovat balíček javax.swing. Balíček poskytuje třídy pro rozhraní Java Swing API, jako jsou JButton, JRadioButton, JTextField, JCheckbox atd.
Komponenty Swing nemají kód specifický pro platformu. Proto je Swing nezávislý na platformě. Na rozdíl od AWT Swing nevyžaduje nativní volání OS k vytváření komponent. JVM je zodpovědný za vyvolání nativních metod. Komponenty Swing jsou lehké. Požadovaný prostor v paměti je také minimální. To je značný faktor pro rychlejší spuštění aplikací založených na Swingu. Ve vývoji aplikací je běžným návrhovým vzorem Model, View, Controller (MVC). Model představuje data. Pohled představuje prezentaci, zatímco ovladač je rozhraní mezi modelem a pohledem. Swing se řídí tímto vzorem. Swing podporuje zapojitelný vzhled a chování. Celkově je výkonnější než AWT.
Jaká je podobnost mezi AWT a Swingem?
Oba jsou sady nástrojů založené na prostředí Java pro vytváření grafického uživatelského rozhraní
Jaký je rozdíl mezi AWT a Swing?
Rozdílný článek uprostřed před tabulkou
AWT vs Swing |
|
AWT je původní sada nástrojů pro okna, grafiku a uživatelské rozhraní závisející na platformě Java, která předcházela Swingu. | Swing je sada nástrojů widgetu GUI pro Javu, která je součástí Oracle Foundation Java Class (JFC). |
Závislost na platformě | |
Komponenty AWT jsou závislé na platformě. | Swing komponenty jsou nezávislé na platformě. |
Počet komponent | |
AWT obsahuje menší počet komponent. | Swing má vyšší počet komponent. |
Součásti | |
Komponenty AWT jsou těžké. | Swing komponenty jsou lehké. |
MVC | |
AWT nenásleduje MVC. | Swing následuje MVC. |
Rychlost | |
AWT není rychlý jako Swing. | Swing je rychlejší než AWT. |
Požadovaný prostor v paměti | |
Komponenty AWT vyžadují více místa v paměti. | Swing komponenty vyžadují méně místa v paměti. |
Požadovaný balíček | |
AWT vyžaduje import balíčku javax.awt. | Swing vyžaduje import balíčku javax.swing. |
Zapojitelný vzhled a chování | |
AWT nepodporuje připojitelný vzhled a chování. | Swing poskytuje zapojitelný vzhled a chování. |
Shrnutí - AWT vs Swing
Tento článek pojednával o dvou nástrojích pro návrh grafického uživatelského rozhraní, kterými jsou AWT a Swing. Rozdíl mezi AWT a Swing spočívá v tom, že AWT je původní sada nástrojů pro okna, grafiku a uživatelské rozhraní závislých na platformě Java, zatímco Swing je sada nástrojů pro widgety GUI pro Javu, což je rozšíření pro AWT. Swing poskytuje bohatší funkce ve srovnání s AWT. Vzhled GUI vytvořeného pomocí Swingu vypadá hezčí než GUI s AWT. Na rozdíl od AWT podporuje Swing připojitelný vzhled a chování a zvyšuje použitelnost aplikace.
Stáhněte si PDF verzi AWT vs Swing
Můžete si stáhnout PDF verzi tohoto článku a použít ji pro offline účely podle citace. Stáhněte si verzi PDF zde: Rozdíl mezi AWT a Swing