जीटीके और क्यूटी अनुप्रयोगों के बीच क्या अंतर है?


54

जीटीके और क्यूटी दोनों संस्करणों में कई पैकेज उपलब्ध हैं।

  • उनमें क्या अंतर है?
  • क्या प्रदर्शन या कार्य पद्धति में कोई अंतर है?

जवाबों:


41

सामान्य तौर पर, उपयोगकर्ता के दृष्टिकोण से अंतर विशुद्ध रूप से कॉस्मेटिक होना चाहिए। Qt और GTK स्वतंत्र रूप से (जैसे, उदाहरण के लिए, qtconfigया gtk-chtheme) थीम सेट करते हैं, लेकिन यह कुछ डेस्कटॉप वातावरण द्वारा सामंजस्य स्थापित करता है।

GNU / Linux इस अर्थ में Qt की तुलना में अधिक GTK उन्मुख हो जाता है कि पूर्व में आमतौर पर अधिक उपयोग किया जाता है, इसलिए आप इसे पसंद करने पर पसंद कर सकते हैं; केडीई के तहत एक अपवाद होगा, जो अपने स्वयं के अनुप्रयोगों के लिए क्यूटी का उपयोग करता है - हालांकि इनमें से कोई भी कारक बहुत महत्वपूर्ण नहीं है।

एक अधिक महत्वपूर्ण मुद्दा बहुत सीमित रैम (जैसे, <1/4 जीबी) के संदर्भों में होगा; इस मामले में आप शायद सिस्टम को विशेष रूप से GTK या Qt का उपयोग करना चाहते हैं , लेकिन दोनों नहीं। स्मृति के गीगाबाइट के साथ अधिकांश आधुनिक डेस्कटॉप पर, हालांकि, यह चिंता का विषय नहीं है - बड़े पैमाने पर दोनों का उपयोग करने से आपको अतिरिक्त (जंगली अनुमान) 50-100 एमबी खर्च हो सकता है।


ध्यान दें कि जीटीके (2 और 3) और क्यूटी (3 और 4) दोनों के अलग-अलग संस्करण अभी भी व्यापक रूप से उपयोग किए जाते हैं, लेकिन पिछड़े संगत नहीं हैं (इसलिए क्यूटी 3 एप्लिकेशन क्यूटी 4 पुस्तकालयों का उपयोग नहीं कर सकते हैं)। हालांकि, दोनों संस्करण एक ही समय में एक सिस्टम पर मौजूद हो सकते हैं और इसका सबसे गंभीर परिणाम भ्रम की स्थिति और थोड़ी अधिक मेमोरी ब्लोट की संभावना होगी।


8
मुझे यह जानने में बेहद दिलचस्पी होगी कि आप कैसे निष्कर्ष पर आते हैं कि लिनक्स अधिक GTK उन्मुख है? लिनक्स, आमतौर पर केवल लिनक्स कर्नेल का अर्थ है जो सामान्य रूप से टूलकिट्स के प्रति कोई पूर्वाग्रह नहीं रखता है, क्योंकि यह एक ओएस कर्नेल है, न कि जीयूआई यूजरस्पेस प्रोग्राम। यदि आप एक ऑपरेटिंग सिस्टम के रूप में GNU / Linux का अर्थ करते हैं, तो मैं अभी भी आपके दावे का विवाद करूंगा। यह कहने के लिए कि GNU / Linux अधिक GTK उन्मुख है, क्योंकि उबंटू सबसे लोकप्रिय डिस्ट्रो है, यह कहना है कि क्रिस्टियानो रोनाल्डो सबसे अच्छा खिलाड़ी है क्योंकि फुटबॉल दुनिया में सबसे ज्यादा खेला जाने वाला खेल है। (मैं यह भी विवाद करता हूं)
डेनिर

10
@darnir मैं "GNU" क्वालिफ़ायर डालूँगा क्योंकि मैंने आम बोलचाल में ऑपरेटिंग सिस्टम का मतलब निकाला था। मैं अपनी थीसिस का बचाव करूंगा कि यह Qt ओरिएंटेड की तुलना में अधिक GTK है: GTK (जो मूल रूप से "GIMP टूल किट" के लिए खड़ा था, और GIMP = GNU इमेज मैनिप्युलेशन प्रोग्राम), GIMP, और GNOME सभी GNU प्रोजेक्ट्स और एक कोर हिस्सा हैं एक ऑपरेटिंग सिस्टम के लिए उनकी (यूजरलैंड) दृष्टि, जो कर्नेल के साथ जोड़ी गई है, जो ऐतिहासिक रूप से "लिनक्स" है। इसलिए जीटीके को मुख्य रूप से लिनक्स के लिए विकसित किया गया था , यह भी मूल सी (बनाम क्यूटी के सी ++) है, जबकि क्यूटी वास्तव में क्रॉस-प्लेटफॉर्म इकाई है।
गोल्डीलॉक्स

1
जबकि मैं GTK के इतिहास और व्युत्पत्ति के बारे में आपसे सहमत हूँ, लेकिन इसका अर्थ यह नहीं है कि GNU / Linux GTK उन्मुख है। वास्तव में विपरीत सच है और आपके बयानों से इसकी पुष्टि होती है। GTK को linux के लिए डिज़ाइन किया गया था , न कि दूसरे तरीके से। मैं अपनी थीसिस का बचाव करते हुए कहूंगा कि लिनक्स को कर्नेल और GNU / लिनक्स के रूप में एक ऑपरेटिंग सिस्टम किसी भी GUI टूलकिट के लिए अज्ञेयवादी है। उबंटू की भारी निर्भरता के कारण जीटीके को अक्सर क्यूटी से अधिक जंगली में देखा जाता है। यह भी तथ्य है कि यह सिस्टम संसाधनों पर हल्का है मदद करता है।
14:30

3
@darnir हां, OS अनिवार्य रूप से GUI टूलकिट में अज्ञेय WRT है - मैं यह दावा नहीं करूंगा कि GTK "देशी" टूलकिट, आदि है, लेकिन आप गलत हैं कि यह "अक्सर जंगली में अधिक क्यों देखा जाता है" - GTK था उबंटू से पहले प्लेटफॉर्म पर सबसे व्यापक रूप से उपयोग किए जाने वाले टूलकिट यहां तक कि सभी डिस्ट्रो द्वारा बड़े पैमाने पर उपयोग किए जाने वाले अन्य मूलभूत भागों के साथ उपरोक्त संबंध के कारण भी मौजूद थे । यही कारण है कि अधिकांश लिनक्स जीयूआई ऐप पहले से ही जीटीके ऐप हैं, और क्यों, अधिक संदर्भ के बिना, यह एक नए उपयोगकर्ता को बताने के लिए समझ में आता है "आप एक के रूप में अच्छी तरह से चुन सकते हैं", बाकी सभी समान हैं। लेकिन यह वास्तव में मायने नहीं रखता है।
गोल्डीलॉक्स

कई अलग-अलग टूलकिट का उपयोग करने पर बहुत अधिक भंडारण की आवश्यकता होगी; मुझे नहीं लगता कि यह प्रदर्शन को प्रभावित करेगा, हालांकि, अन्य चीजों के लिए बस जगह।
डेम्योकिर्बी

19

नहीं, ऐसे कार्यक्रमों की आंतरिक संरचना में कोई अंतर नहीं है। GTK और Qt यूजर इंटरफेस टूलकिट और फ्रेमवर्क हैं। वे पुस्तकालय हैं जो डेवलपर्स ग्राफिकल इंटरफेस डिजाइन करने के लिए उपयोग करते हैं।

जब एक ग्राफिकल (GUI) प्रोग्राम लिखा जाता है, तो सबसे पहले इसके कोर इंटर्नल विकसित होते हैं। यह वही है जो प्रोग्राम को चलाता है। आप कोर को कभी नहीं देखते हैं , वे बस पृष्ठभूमि में निष्पादित करते हैं। इस कोर के ऊपर, एक यूजर इंटरफेस (UI) डिज़ाइन किया गया है।

अब, डेवलपर्स स्क्रैच से पूरा इंटरफ़ेस डिज़ाइन कर सकते हैं, या दूसरों द्वारा बनाए गए डिज़ाइनों का फिर से उपयोग कर सकते हैं। री-यूज़िंग डिज़ाइन का एक बड़ा फायदा है। यह आपके कंप्यूटर के सभी कार्यक्रमों को समान दिखने देता है। इसलिए, वे GUI टूलकिट का उपयोग करते हैं। जीटीके और क्यूटी दो बेहद सामान्य जीयूआई टूलकिट हैं।

GTK GNOME के ​​लिए मानक टूलकिट है जबकि QDE KDE द्वारा उपयोग किया जाता है। उपयोगकर्ता के दृष्टिकोण से, यह केवल ऐसा दिखता है जो भिन्न होता है। कार्यक्रम दिल में ही रहता है।


4

विचार करने के लिए एक अन्य महत्वपूर्ण पहलू उनके लाइसेंस प्रकटीकरण के लिए क्यूटी लाइसेंसिंग लिंक है जो स्पष्ट रूप से सबसे अधिक गैर-लाभकारी परियोजनाएं बनाने के लिए स्वतंत्र रूप से उपलब्ध होने के लिए निर्धारित है, लेकिन एक वाणिज्यिक संबंध संभव है और उस मामले के लिए प्रतिबंध हो सकता है। जीटीके, जहां स्पष्ट रूप से कहा गया है कि इसका उपयोग स्वामित्व वाले अनुप्रयोगों जीटीके स्टेटमेंट में भी स्वतंत्र रूप से किया जा सकता है :

Are there any licensing restrictions?
GTK is free software and part of the GNU Project. However, the licensing terms for GTK, the GNU LGPL, allow it to be used by all developers, including those developing proprietary software, without any license fees or royalties. 

जटिल GUI विकास का एक प्रमुख पहलू एक डिजाइनिंग किट के रूप में GLADE पर निर्भर करेगा और चाहे वह आपके दृष्टिकोण के ग्लेड लिंक को सूट करता हो । इसका उद्देश्य क्रॉस प्लेटफॉर्म होना है, लेकिन क्यूटी के रूप में बड़े पैमाने पर समर्थित क्रॉस प्लेटफॉर्म नहीं हो सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.