AWT की तुलना में स्विंग के क्या फायदे/नुकसान हैं?

0
13144

स्विंग AWT की तुलना में घटकों का एक समृद्ध सेट प्रदान करता है। वे 100% जावा-आधारित हैं।

दूसरी ओर AWT को इस मानसिकता के साथ विकसित किया गया था कि यदि कोई घटक या किसी घटक की क्षमता एक प्लेटफ़ॉर्म पर उपलब्ध नहीं थी, तो वह किसी भी प्लेटफ़ॉर्म पर उपलब्ध नहीं होगी। प्लेटफ़ॉर्म x से y से z तक कुछ शीघ्रता से पोर्टेबल। AWT की सहकर्मी-आधारित प्रकृति के कारण, जो एक कार्यान्वयन पर काम कर सकता है वह दूसरे पर काम नहीं कर सकता है, क्योंकि सहकर्मी-एकीकरण उतना मजबूत नहीं हो सकता है। मूल AWT समस्याओं में से कई सहकर्मी कार्यान्वयन में अंतर के कारण पाई जा सकती थीं।

इसका मतलब यह नहीं है कि स्विंग में कम बग हैं, हालांकि अधिकांश इन दिनों बाहर हैं। यह सिर्फ इतना है कि यदि स्विंग में कोई बग मौजूद है, तो सभी प्लेटफार्मों पर वही समस्या है, जो कि AWT के मामले में नहीं थी।

[एफएक्यू प्रबंधक नोट] एडब्ल्यूटी पर स्विंग करने के कुछ अन्य फायदे हैं:

  • स्विंग AWT-प्रतिस्थापन घटकों को अतिरिक्त घटक और अतिरिक्त कार्यक्षमता दोनों प्रदान करता है
  • स्विंग घटक उपयोग की जा रही वर्तमान "लुक एंड फील" लाइब्रेरी के आधार पर अपना स्वरूप बदल सकते हैं। आप जिस प्लेटफ़ॉर्म पर हैं, उसी रूप और अनुभव का उपयोग कर सकते हैं, या भिन्न रूप और अनुभव का उपयोग कर सकते हैं
  • स्विंग घटक मॉडल-व्यू-कंट्रोलर प्रतिमान (एमवीसी) का पालन करते हैं, और इस प्रकार अधिक लचीला यूआई प्रदान कर सकते हैं।
  • स्विंग घटकों के लिए "अतिरिक्त" प्रदान करता है, जैसे:
    • कई घटकों पर चिह्न
    • घटकों के लिए सजावटी सीमाएँ
    • घटकों के लिए टूलटिप्स
  • स्विंग घटक हल्के होते हैं (AWT से कम संसाधन-गहन)
  • स्विंग बिल्ट-इन डबल बफरिंग प्रदान करता है
  • जब आप अपने स्वयं के घटक बनाते हैं तो स्विंग पेंट डिबगिंग समर्थन प्रदान करता है

स्विंग के कुछ नुकसान भी हैं:

  • इसके लिए Java 2 या एक अलग JAR फ़ाइल की आवश्यकता होती है
  • यदि आप प्रोग्रामिंग करते समय बहुत सावधान नहीं हैं, तो यह AWT से धीमा हो सकता है (सभी घटक खींचे गए हैं)
  • मूल घटकों की तरह दिखने वाले स्विंग घटक कार्य नहीं कर सकते हैं बिल्कुल देशी घटकों की तरह