Swing нь AWT-ээс илүү баялаг бүрэлдэхүүн хэсгүүдээр хангадаг. Эдгээр нь 100% Java дээр суурилсан.
Нөгөө талаас AWT нь хэрэв бүрэлдэхүүн хэсэг эсвэл бүрэлдэхүүн хэсэг нь нэг платформ дээр байхгүй байсан бол аль ч платформ дээр ашиглах боломжгүй гэсэн сэтгэлгээгээр бүтээгдсэн. Платформ х-ээс y хүртэл z хүртэл хурдан зөөврийн ямар нэг зүйл. AWT-ийн үе тэнгийнхэнд суурилсан шинж чанараас шалтгаалан нэг хэрэгжүүлэлт дээр ажиллаж болох зүйл нь нөгөө дээр ажиллахгүй байж магадгүй, учир нь үе тэнгийн интеграци нь тийм ч бат бөх биш байж магадгүй юм. Анхны AWT-ийн ихэнх асуудлууд нь үе тэнгийнхний хэрэгжилтийн ялгаанаас улбаатай байсан.
Энэ нь Swing-д алдаа бага байгаа гэсэн үг биш ч ихэнх нь өнөө үед гарч байна. Зүгээр л, хэрэв Swing-д алдаа гарвал бүх платформ дээр ижил асуудал гардаг бөгөөд энэ нь AWT-д байгаагүй юм.
[Түгээмэл асуултуудын менежерийн тэмдэглэл] AWT-ээс илүү Swing нь хэд хэдэн давуу талтай:
- Swing нь AWT солих бүрэлдэхүүн хэсгүүдэд нэмэлт бүрэлдэхүүн хэсгүүд болон нэмэлт функцуудыг хоёуланг нь өгдөг
- Савлуурын бүрэлдэхүүн хэсгүүд нь одоо ашиглагдаж буй "харагдах ба мэдрэмж" номын санд тулгуурлан гадаад төрхөө өөрчлөх боломжтой. Та платформтой ижил дүр төрхийг ашиглаж болно, эсвэл өөр дүр төрхийг ашиглаж болно
- Савлуурын бүрэлдэхүүн хэсгүүд нь Model-View-Controller парадигмыг (MVC) дагаж мөрддөг бөгөөд ингэснээр илүү уян хатан UI-г хангаж чадна.
- Swing нь бүрэлдэхүүн хэсгүүдэд "нэмэлт" өгдөг, тухайлбал:
- Олон бүрэлдэхүүн хэсэг дээрх дүрс тэмдэг
- Бүрэлдэхүүн хэсгүүдийн гоёл чимэглэлийн хүрээ
- Бүрэлдэхүүн хэсгүүдэд зориулсан зөвлөмжүүд
- Савлуурын бүрэлдэхүүн хэсгүүд нь хөнгөн жинтэй (AWT-аас бага нөөц шаарддаг)
- Swing нь давхар буферээр хангадаг
- Swing нь таныг өөрийн бүрэлдэхүүн хэсгүүдийг бүтээхэд будаг дибаг хийх дэмжлэг үзүүлдэг
Савлуур нь хэд хэдэн сул талуудтай:
- Энэ нь Java 2 эсвэл тусдаа JAR файл шаарддаг
- Хэрэв та програмчлахдаа маш болгоомжтой байхгүй бол энэ нь AWT-ээс удаан байж болно (бүх бүрэлдэхүүн хэсгүүдийг зурсан)
- Уугуул бүрэлдэхүүн хэсгүүд шиг харагдах дүүжин бүрэлдэхүүн хэсгүүд ажиллахгүй байж магадгүй яг эх бүрэлдэхүүн хэсгүүдтэй адил