Differenza tra AWT e Swing

Differenza chiave - AWT vs Swing
 

Java è un linguaggio di programmazione di alto livello sviluppato da Sun Microsystems. Java supporta la programmazione orientata agli oggetti che aiuta a progettare e sviluppare un software utilizzando oggetti. Quando il programma Java è compilato, viene convertito in un bytecode. Quel bytecode è interpretato dalla Java Virtual Machine (JVM) su qualsiasi piattaforma. Pertanto, è un linguaggio di programmazione che i programmatori possono scrivere una sola volta ed eseguire su qualsiasi piattaforma. Java può essere utilizzato per sviluppare una varietà di applicazioni come desktop, mobile e applicazioni web. La lingua fornisce toolkit per la creazione di interfacce utente grafiche (GUI) avanzate. Due di questi sono AWT e Swing. Questo articolo discute la differenza tra AWT e Swing. Il differenza fondamentale tra AWT e Swing è quello AWT è il toolkit di widget di finestre, grafici e widget dell'interfaccia utente originale di Java, mentre Swing è un toolkit di widget GUI per Java che è un'estensione per AWT.

CONTENUTO

1. Panoramica e differenza chiave
2. Cos'è AWT
3. Cos'è Swing
4. Somiglianze tra AWT e Swing
5. Confronto affiancato - AWT vs Swing in forma tabulare
6. Sommario

Cos'è AWT?

Un'interfaccia utente grafica è un'interfaccia che consente agli utenti di fornire istruzioni per il software per l'esecuzione delle attività. Consiste di vari componenti grafici. Alcuni componenti della GUI sono: finestra, pulsante, casella combinata, area di testo, casella di riepilogo ed etichetta. Usando questi componenti, il programmatore può sviluppare un'interfaccia utente interattiva per l'applicazione. Una GUI è basata su eventi. Fare clic sul pulsante, chiudere la finestra, digitare qualcosa nella casella di testo sono alcuni esempi di eventi che possono verificarsi in un'applicazione basata su un'interfaccia utente grafica. Oggi molte applicazioni contengono GUI. Applicazioni mobili, sistemi di prenotazione di biglietti aerei, Automated Teller Machines hanno una ricca interfaccia grafica per consentire ai clienti di utilizzare facilmente l'applicazione.

AWT sta per Toolkit di finestre astratte. AWT richiede un oggetto OS nativo per implementare le funzionalità. Pertanto, i componenti AWT sono pesanti e richiedono più spazio di memoria. Anche i componenti AWT richiedono tempo per essere eseguiti. Il numero di componenti disponibili in AWT è minimo. È necessario importare il pacchetto javax.awt per sviluppare un'applicazione GUI basata su AWT.

Figura 01: AWT e swing

Alcuni componenti AWT sono pulsante, campi di testo, caselle a discesa, barre di scorrimento, finestre, cornici, pannelli, etichette. Dopo aver creato gli oggetti, possono essere collocati in un contenitore. Un contenitore offre spazio per i componenti da caricare. AWT non supporta l'aspetto e il tocco collegabili. Pertanto, un'applicazione AWT sviluppata in un sistema operativo potrebbe non avere lo stesso aspetto in un altro sistema operativo.

Cos'è Swing?

Swing è un kit di strumenti widget GUI per Java. Fa parte delle Java Foundation Classes (JFC) di Oracle. È un'interfaccia di programmazione dell'applicazione per creare GUI per applicazioni Java. È basato su API AWT. Swing è stato sviluppato per fornire componenti più flessibili e sofisticati di AWT. Swing contiene componenti di base come etichette, caselle di testo, pulsanti. Contiene anche componenti più avanzati. Alcuni di essi sono alberi, tabelle, elenchi, riquadri di scorrimento e riquadri a schede. Se il programmatore deve implementare un'applicazione Swing, è necessario importare il pacchetto javax.swing. Il pacchetto fornisce classi per Java Swing API come JButton, JRadioButton, JTextField, JCheckbox ecc.

I componenti Swing non hanno un codice specifico per piattaforma. Pertanto, Swing è indipendente dalla piattaforma. A differenza di AWT, Swing non richiede chiamate del sistema operativo nativo per creare componenti. JVM è responsabile per invocare i metodi nativi. I componenti Swing sono leggeri. Anche lo spazio di memoria richiesto è minimo. Questo è un fattore considerevole per eseguire le applicazioni basate su Swing più velocemente. Nello sviluppo di applicazioni, Model, View, Controller (MVC) è un modello di progettazione comune. Il modello rappresenta i dati. La vista rappresenta la presentazione mentre Controller è l'interfaccia tra Modello e Vista. Swing segue questo schema. Altalena supporta l'aspetto e il tocco collegabili. Nel complesso, è più potente di AWT.

Qual è la somiglianza tra AWT e Swing?

  • Entrambi sono toolkit basati su Java per creare un'interfaccia utente grafica.

Qual è la differenza tra AWT e Swing?

AWT vs Swing

AWT è il toolkit di widget per finestre, grafica e interfaccia utente originale della piattaforma Java precedente a Swing. Swing è un kit di strumenti widget GUI per Java che fa parte della Java Foundation Class (JFC) di Oracle.
 Dipendenza dalla piattaforma
I componenti AWT dipendono dalla piattaforma. I componenti Swing sono indipendenti dalla piattaforma.
Numero di componenti
AWT contiene meno numero di componenti. Swing ha un numero maggiore di componenti.
 componenti
I componenti AWT sono pesanti. I componenti dell'oscillazione sono leggeri.
MVC
AWT non segue MVC. Swing segue MVC.
Velocità
AWT non è veloce come Swing. Swing è più veloce di AWT.
Spazio di memoria richiesto
I componenti AWT richiedono più spazio di memoria. I componenti dell'oscillazione richiedono meno spazio di memoria.
Pacchetto richiesto
AWT richiede l'importazione del pacchetto javax.awt. Swing richiede l'importazione del pacchetto javax.swing.
Aspetto e sensazione collegabili
AWT non supporta l'aspetto e il tocco collegabili. Swing offre un aspetto e un tocco collegabili.

Sommario - AWT vs Swing

Questo articolo ha discusso due strumenti di progettazione grafica dell'interfaccia utente AWT e Swing. La differenza tra AWT e Swing è che AWT è il toolkit di widget di finestre, grafica e interfaccia utente dipendente dalla piattaforma originale di Java, mentre Swing è un kit di strumenti widget GUI per Java, che è un'estensione per AWT. Swing offre funzionalità più ricche rispetto a AWT. L'aspetto della GUI creata con Swing è più gradevole della GUI con AWT. A differenza di AWT, Swing supporta l'aspetto e il tocco collegabili e aumenta l'usabilità dell'applicazione.

Scarica la versione PDF di AWT vs Swing

È possibile scaricare la versione PDF di questo articolo e utilizzarlo per scopi offline come da nota di citazione. Si prega di scaricare la versione PDF qui: Differenza tra AWT e Swing

Riferimento:

1.tutorialspoint.com. "Panoramica SWING." Il punto. Disponibile qui 
2. "Swing (Java)." Wikipedia, Wikimedia Foundation, 24 gennaio 2018. Disponibile qui  
3. "Abstract Window Toolkit." Wikipedia, Wikimedia Foundation, 22 gennaio 2018. Disponibile qui 
4. "Esercitazione Java Swing - javatpoint". Disponibile qui
5.tutorialspoint.com. "Panoramica AWT." Il punto. Disponibile qui 

Cortesia dell'immagine:

1.'AWTSwingClassHierarchy 'di Jakub Závěrka - Jakub Závěrka - opera propria, (Public Domain) via Commons Wikimedia