Разлика между AWT срещу Swing

Java е софтуер за разработка на приложения, независим от платформата. Той предоставя набор от софтуер, който може да се използва за разработване на приложения. Един такъв софтуер е AWT (Abstract Window Toolkit). Това е набор от програмен интерфейс, който се използва за създаване на компоненти на графичния потребителски интерфейс (GUI) и други услуги, необходими за GUI в Java. Тя е част от класовете на Java Foundation. Улеснява развитието на GUI. AWT включва набор от джаджи за прозорци, графики и потребителски интерфейс. Той също така разполага със здрава обработка на събития, инструменти за изображения, мениджър за оформление на гъвкави оформления на прозорците. В тази тема ще научим за AWT срещу Swing и техните разлики

Swing е най-новият набор от инструменти, базиран на AWT. Swing дава на програмиста гъвкавост на независимостта на платформата. За разлика от AWT програмистът може да създаде по-обобщени GUI обекти, използвайки Swing.

Преглед на AWT : AWT се използва за поддръжка на потребителски интерфейс в Java Application. Той осигурява абстракция на високо ниво за програма Java, тъй като крие основните детайли на GUI. Тъй като AWT е изграждане на api на операционната система за предоставяне на графичен потребителски интерфейс за Java. Неговият компонент има зависимост от основния си аналог (като външен вид и усещане на тази ОС), за да се справи с тяхната функционалност. По този начин, тези компоненти често се наричат ​​"тежки" компоненти.

Функциите на AWT включват:

  • Богат набор от компоненти на потребителския интерфейс.
  • Здравият модел за обработка на събитията
  • Layout Manager за различно оформление на прозореца
  • Класовете за трансфер на данни поддържат cut-paste през нативната платформа.

Преглед на Swing : Swing е изграден на AWT, той е част от класовете на Java Foundation. Swing е базиран изцяло на Java, затова платформата му е независима. Използва се за създаване на по-ефективен графичен интерфейс от AWT.

Характеристики на Swing:

  • Всички функции на AWT
  • Осигурява богат набор от компоненти от по-високо ниво като дърво, панели с раздели, полета със списък и т.н.
  • Подвижен външен вид и усещане.
  • Няма зависимост от партньорските компоненти.

Сравнение между главата на AWT срещу Swing (Инфографика)

По-долу е топ 11 сравнението между AWT срещу Swing:

Основни разлики между AWT и Swing:

Тъй като AWT е мост между приложението и основния интерфейс, прилагането му на нова операционна система може да включва много работа. Защото изисква отново да се развие местен връстник. Използването на местни връстници ограничава функционалността на AWT. AWT има две нива на API -

  • Единият осигурява основен общ интерфейс между приложението и родната ОС.
  • Втора GUI джаджа, която предоставя обекти зад кодове, задвижвани на AWT платно.

Използването на родните компоненти прави AWT бързо. По този начин подобрява работата си. Също така, повечето уеб браузър поддържа AWT, няма нужда от Java плъгин за AWT Applets. Но AWT има по-малък набор от компоненти, поради което потребителите трябва да напишат персонализиран код, за да получат свои собствени компоненти, базирани на AWT. AWT компонентите не поддържат функции като заглавна лента и ленти с менюта.

Swing е разширението на AWT. Не е точната подмяна на AWT. Следователно той има функции AWT с разширяемост на JAVA. Така че всички компоненти, които присъстват в AWT, присъстват и в Swing. Но Swing не изисква партньорско програмиране, което го прави платформа независима и лека. Също така, Swing позволява по-голям набор от компоненти.

Swing е базирана на модул архитектура. Той поддържа включване за персонализирана реализация. Потребителят може да създаде собствена имплементация, за да отмени изпълнението по подразбиране на Java. Swing също така осигурява поддръжка на механизма на изпълнение. Методът за непряка композиция позволява на люлката да реагира на промените в средата на изпълнение според средата на приложението. Swing поддържа функции като икони и съвети за инструменти. Sun активно участва в развитието на Swing оттук нататък суингът получава нови функции и се подобрява от по-рано.

По-голямата част от уеб браузъра не поддържа суинг. По този начин, човек трябва да има плъгин за Java за суинг. Swing е по-бавен в сравнение с AWT. Тъй като компонентите на Swing се справят със собствената си картина (вместо да използват родния API като DirectX за Windows), това може да се сблъска с графични проблеми.

Таблица за сравнение между AWT и Swing:

AWTЛЮЛКА
AWT означава абстрактен инструментариум за прозорци.Swing е част от Java Foundation Class класове (JFC).
AWT зависи от платформата. Кодът му се намира в ОС на системата, поради което прави невъзможна независимостта на платформата.Компонентите за люлка са произведени в JAVA. По този начин, което го прави платформа независима.
Компонентите на AWT са с тежка категория.Компонентите на люлка са леки.
AWT не следва MVC (Model View Controller).Swing е базиран на MVC.
AWT компонентите изискват java.awt.packageКомпонентите на люлка изискват javax.swing.package.
AWT няма панел Jtable и Jtabbed.Swing има панел Jtable и Jtabbed.
AWT зависи от платформата, следователно не се поддържа много различен външен вид и усещане.Суингът може да има различен вид и усещане.
AWT заема повече пространство в паметта.Swing заема по-малко място в паметта.
AWT е по-малко мощен от Swing.Swing е удължаването на AWT, поради което много недостатъци са отстранени.
Look and Feel of AWT зависи от платформата.Външният вид на Swing е независим от основната платформа и операционната система.
AWT компонентите зависят от естествения код (връстници), за да функционират правилно. Ето защо тези компоненти са „Компоненти за тежко тегло“.Суингът няма такава зависимост. Следователно тези компоненти са „компоненти за леко тегло“.

Заключение:

И двете AWT срещу Swing се използват за създаване на графичен потребителски интерфейс в Java. И двамата са здрави и имат своите плюсове и минуси. AWT компонентът е подходящ за проста разработка на приложения, която е предназначена най-вече за работа в една ОС. Докато swing е най-новият интерфейс, който е напълно изграден на Java. Swing дава на потребителя свобода да кодира веднъж и работи навсякъде. Той също така осигурява по-широка гама от компоненти от AWT. Напълно зависи от изискванията на потребителя. Въпреки че AWT е стара разработка, която все още се случва в AWT и става все по-добра. Ако изискването е да изглеждате и да се чувствате по-скоро като основната операционна система, тогава AWT би бил по-добър вариант. Ако искате по-гъвкав графичен интерфейс, тогава люлката е добре да отидете.

Препоръчителни статии

Това е ръководство за най-високата разлика между AWT срещу Swing. Тук също обсъждаме ключовите разлики AWT срещу Swing с инфографика и таблица за сравнение. Може да разгледате и следните статии, за да научите повече -

  1. Java срещу Ruby - кой е по-добър?
  2. Python vs Scala - Топ разлики
  3. Разлика между HTML5 и Flash
  4. WordPress срещу Drupal
  5. Етикет на JavaFX
  6. Оформления на JavaFX
  7. Видове и как да създадете JavaFx графики?
  8. JavaFX плъзгач
  9. Как да въвеждате текст в JavaFX TextField?
  10. Конструктори и методи на JavaFx бутон
  11. Топ 15 методи на HBox в JavaFX