Belangrijkste verschil - AWT versus Swing
Java is een programmeertaal op hoog niveau die is ontwikkeld door Sun Microsystems. Java ondersteunt Object Oriented Programming dat helpt bij het ontwerpen en ontwikkelen van software met behulp van objecten. Als het Java-programma is gecompileerd, wordt het omgezet in een bytecode. Die bytecode wordt op elk platform geïnterpreteerd door de Java Virtual Machine (JVM) en is daarom een programmeertaal die programmeurs eenmalig kunnen schrijven en op elk platform kunnen draaien. Java kan worden gebruikt om een verscheidenheid aan applicaties te ontwikkelen, zoals desktop-, mobiele en webapplicaties. De taal biedt toolkits voor het maken van rijke grafische gebruikersinterfaces (GUI). Twee van hen zijn AWT en Swing. Dit artikel bespreekt het verschil tussen AWT en Swing. Het belangrijkste verschil tussen AWT en Swing is dat AWT Java's originele platformafhankelijke windowing, graphics,en gebruikersinterface-widget-toolkit, terwijl Swing een GUI-widget-toolkit voor Java is die een extensie is voor AWT.
INHOUD
1. Overzicht en belangrijkste verschil
2. Wat is AWT
3. Wat is Swing
4. Overeenkomsten tussen AWT en Swing
5. Vergelijking zij aan zij - AWT versus Swing in tabelvorm
6. Samenvatting
Wat is AWT?
Een grafische gebruikersinterface is een interface voor gebruikers om instructies te geven voor de software om taken uit te voeren. Het bestaat uit verschillende grafische componenten. Sommige GUI-componenten zijn venster, knop, keuzelijst met invoervak, tekstgebied, keuzelijst en label. Met behulp van deze componenten kan de programmeur een interactieve gebruikersinterface voor de applicatie ontwikkelen. Een GUI is gebaseerd op gebeurtenissen. Klikken op een knop, het venster sluiten, iets in het tekstvak typen zijn enkele voorbeelden van gebeurtenissen die kunnen optreden in een op een grafische gebruikersinterface gebaseerde applicatie. Tegenwoordig bevatten veel applicaties GUI's. Mobiele applicaties, reserveringssystemen voor vliegtickets en geautomatiseerde telmachines hebben rijke grafische interfaces voor klanten om de applicatie gemakkelijk te gebruiken.
AWT staat voor Abstract Window Toolkit. AWT vereist een native OS-object om de functionaliteiten te implementeren. Daarom zijn AWT-componenten zwaar in gewicht en hebben ze meer geheugenruimte nodig. AWT-componenten hebben ook tijd nodig om uit te voeren. Het aantal componenten dat beschikbaar is in AWT is minimaal. Het is noodzakelijk om het javax.awt-pakket te importeren om een op AWT gebaseerde GUI-applicaties te ontwikkelen.
Figuur 01: AWT en Swing
Sommige AWT-componenten zijn knop, tekstvelden, vervolgkeuzelijsten, schuifbalken, venster, frame, paneel, labels. Nadat de objecten zijn gemaakt, kunnen ze in een container worden geplaatst. Een container biedt ruimte om componenten te laden. AWT ondersteunt geen pluggable look en feel. Daarom ziet een AWT-toepassing die in het ene besturingssysteem is ontwikkeld, er in een ander besturingssysteem mogelijk niet hetzelfde uit.
Wat is swing?
Swing is een GUI-widget-toolkit voor Java. Het maakt deel uit van Oracle's Java Foundation Classes (JFC). Het is een Application Programming Interface om GUI voor Java-applicaties te bouwen. Het is gebouwd bovenop AWT API. Swing is ontwikkeld om flexibelere en verfijndere componenten te bieden dan AWT. Swing bevat basiscomponenten zoals labels, tekstvakken, knoppen. Het bevat ook meer geavanceerde componenten. Sommigen van hen zijn bomen, tabellen, lijsten, schuifpanelen en panelen met tabbladen. Als de programmeur een Swing-applicatie moet implementeren, is het nodig om het javax.swing-pakket te importeren. Het pakket biedt klassen voor Java Swing API zoals JButton, JRadioButton, JTextField, JCheckbox etc.
Swing-componenten hebben geen platformspecifieke code. Daarom is Swing platformonafhankelijk. In tegenstelling tot AWT heeft Swing geen native OS-aanroepen nodig om componenten te bouwen. JVM is verantwoordelijk voor het aanroepen van de native methoden. De Swing-componenten zijn lichtgewicht. De benodigde geheugenruimte is ook minimaal. Dit is een aanzienlijke factor om op Swing gebaseerde applicaties sneller te laten draaien. Bij applicatieontwikkeling is Model, View, Controller (MVC) een veelgebruikt ontwerppatroon. Het model vertegenwoordigt gegevens. De weergave vertegenwoordigt de presentatie terwijl Controller de interface is tussen Model en View. Swing volgt dit patroon. Swing ondersteunt de pluggable look en feel. Over het algemeen is het krachtiger dan AWT.
Wat is de overeenkomst tussen AWT en Swing?
Beide zijn op Java gebaseerde toolkits om een grafische gebruikersinterface te bouwen
Wat is het verschil tussen AWT en Swing?
Diff Artikel Midden voor Tafel
AWT versus Swing |
|
AWT is Java's oorspronkelijke platformafhankelijke toolkit voor vensters, grafische afbeeldingen en gebruikersinterface-widgets die voorafgaan aan Swing. | Swing is een GUI-widget-toolkit voor Java die deel uitmaakt van Oracle's Java Foundation Class (JFC). |
Platformafhankelijkheid | |
AWT-componenten zijn platformafhankelijk. | Zwenkcomponenten zijn platformonafhankelijk. |
Aantal componenten | |
AWT bevat minder componenten. | Swing heeft een groter aantal componenten. |
Componenten | |
AWT-componenten zijn zwaar. | Swing-componenten zijn lichtgewicht. |
MVC | |
AWT volgt MVC niet. | Swing volgt MVC. |
Snelheid | |
AWT is niet zo snel als Swing. | Swing is sneller dan AWT. |
Vereiste geheugenruimte | |
AWT-componenten hebben meer geheugenruimte nodig. | Swing-componenten hebben minder geheugenruimte nodig. |
Vereist pakket | |
AWT vereist het importeren van het javax.awt-pakket. | Swing vereist het importeren van het javax.swing-pakket. |
Pluggable look en feel | |
AWT ondersteunt geen pluggable look en feel. | Swing zorgt voor een pluggable look en feel. |
Samenvatting - AWT versus Swing
In dit artikel zijn twee grafische ontwerptools voor gebruikersinterfaces besproken: AWT en Swing. Het verschil tussen AWT en Swing is dat AWT Java's oorspronkelijke platformafhankelijke windowing-, grafische en gebruikersinterface-widget-toolkit is, terwijl Swing een GUI-widget-toolkit is voor Java, een extensie voor AWT. Swing biedt rijkere functionaliteiten in vergelijking met AWT. Het uiterlijk van de GUI die is gebouwd met Swing ziet er mooier uit dan de GUI met AWT. In tegenstelling tot AWT ondersteunt Swing de pluggable look en feel en vergroot het de bruikbaarheid van de applicatie.
Download de pdf-versie van AWT vs Swing
U kunt de pdf-versie van dit artikel downloaden en offline gebruiken volgens de citatienota. Download de pdf-versie hier: Verschil tussen AWT en Swing