क्या क्रॉस-प्लेटफ़ॉर्म GUI टूलकिट के लिए एक प्रवृत्ति है? [बन्द है]


12

अभी क्रॉस-प्लेटफ़ॉर्म GUI चौखटे के उपयोग के लिए रुझान क्या है ? क्या अधिक लोग क्रॉस-प्लेटफ़ॉर्म फ्रेमवर्क (जैसे GTK +, Qt और wxWidgets) का उपयोग करना शुरू कर रहे हैं या क्या अधिक हैं जो अधिक प्लेटफ़ॉर्म-बंधे फ़्रेमवर्क (जैसे कोको या WPF) का उपयोग करते हैं? क्या यह कम या ज्यादा स्थिर है? क्या यह एक रोलरकोस्टर की तरह है? आपको क्या लगता है कि ट्रेंड ऐसा होगा, जैसे कि, 5 साल अब से?

ओएस परिदृश्य विंडोज (व्यक्तिगत अवलोकन) का उपयोग करके कम लोगों के साथ स्थानांतरित हो रहा है। इससे क्रॉस-प्लेटफ़ॉर्म टूलकिट की मांग बढ़नी चाहिए, क्या नहीं?

संपादित करें: इसके अलावा, कौन सा (क्रॉस-प्लेटफ़ॉर्म) टूलकिट सबसे अधिक बढ़ रहा है, यदि ऐसा है?

जवाबों:


11

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

क्रॉस-प्लेटफ़ॉर्म टूलकिट ने कभी भी अच्छी तरह से काम नहीं किया है; डेस्कटॉप प्लेटफॉर्म समान नहीं हैं, और यह वास्तव में उन्हें दूर करना मुश्किल है। फोन और टैबलेट को मिक्स में जोड़ने से यह और भी कठिन हो जाता है। आप एक बहुत टपका हुआ अमूर्त ( http://www.joelonsoftware.com/articles/LeakyAbstractions.html देखें ) के साथ समाप्त होते हैं । अक्सर यह आसान है कि आप अपने "इंजन" को अपने यूआई से अलग करें, और यूआई को प्रति प्लेटफॉर्म पर अलग से लिखें।

मैक के लिए अधिक लोकप्रिय होने की प्रवृत्ति क्रॉस-प्लेटफ़ॉर्म किट को अधिक के बजाय कम लोकप्रिय बना सकती है। मुझे लगता है कि अक्सर लोग प्लेटफ़ॉर्म प्लेटफ़ॉर्म किट का इस्तेमाल सैद्धांतिक रूप से क्रॉस-प्लेटफ़ॉर्म चेकबॉक्स की जाँच करने के लिए करते हैं, क्योंकि सभी प्लेटफ़ॉर्म पर वास्तव में अच्छे परिणाम मिलते हैं। एक बार जब आप वास्तव में कई प्लेटफार्मों के बारे में परवाह करते हैं ... तो आप यह देखना शुरू करते हैं कि क्रॉस-प्लेटफॉर्म किट में डाउनसाइड कैसे होते हैं।

यहाँ उन डाउनसाइड पर एलेक्स पायने से एक ब्लॉग पोस्ट है: http://al3x.net/2011/01/15/user-hostile-xmarkets.html

मुझे लगता है कि यह बता रहा है कि कई बड़े, लोकप्रिय क्रॉस-प्लेटफ़ॉर्म ऐप अपने स्वयं के क्रॉस-प्लेटफ़ॉर्म दृष्टिकोण (फ़ायरफ़ॉक्स, क्रोम, एक्लिप्स, ओपनऑफ़िस.ओई ऐसे उदाहरण हैं जो दिमाग में आते हैं) का आविष्कार करते हैं। आवश्यकता पड़ने पर फ्रेमवर्क के स्वामित्व में वे अमूर्तन के माध्यम से नीचे पंच कर सकते हैं। इसके अलावा, इन ऐप्स ने सभी प्लेटफार्मों पर समान (और विशेष रूप से देशी नहीं) देखने के लिए ट्रेंड किया है।

यह सब कहा, मैं वास्तविक आँकड़े या कुछ भी नहीं है। लेकिन मैंने GTK + पर बहुत काम किया है, और फ़ायरफ़ॉक्स, क्रोम और एक्लिप्स सहित कोडबेस के साथ कुछ परिचित हैं। इसलिए मैंने पहली बार तकनीकी चुनौतियों को देखा है।


2
मैंने इसे केवल "क्रॉस-प्लेटफ़ॉर्म टूलकिट्स के लिए रुझान विफलता की ओर है" के रूप में वर्णित किया है।
ओहमंटिक्स

14

तथ्य की बात के रूप में हाल के वर्षों में एक क्रॉस-प्लेटफ़ॉर्म UI टूलकिट की ओर रुझान हुआ है। वह टूलकिट HTML / CSS / JavaScript है।

यह सिर्फ एक बार विकसित करने के लिए सरल है और इसे हर जगह लगभग हर जगह देखा जाता है।

और हाँ, विकास बड़े पैमाने पर डेस्कटॉप से ​​वेब में दूर जा रहे हैं। आप खुद ही देख लीजिए।


+1 वेब के लिए बढ़ते UI ट्रेंड के रूप में, लेकिन मुझे नहीं लगता कि यह ओपी के प्रश्न को संबोधित करता है।

टोटली सहमत हम पूरी तरह से HTML5 / CSS3 / जावास्क्रिप्ट का उपयोग करके सेटटॉप बॉक्स पर अपना आईपीटीवी एप्लीकेशन विकसित करते हैं। यह भविष्य है, अभी तक एक और बड़े पैमाने पर, पूर्ण विकसित सी / सी ++ ढांचा नहीं है
अर्नेली

1
अच्छा उल्लेख है, लेकिन मैं वास्तव में क्रॉस-प्लेटफॉर्म डेस्कटॉप टूलकिट्स में रुचि रखता हूं । फिर भी उखाड़ा।
Anto

@ एंटो - को अपने प्रश्न में जोड़ना चाह सकते हैं। पढ़ने से मैं "डेस्कटॉप" पर बिल्कुल नहीं उठा। बेशक, मैं एक वेब प्रोग्रामर हूं और आपके द्वारा बताई गई अधिकांश रूपरेखाओं को पहचान नहीं पाया :)
Marcie

@ नहीं, आप अपने प्रश्न में डेस्कटॉप का उल्लेख करना चाह सकते हैं।
JBRWilkinson

7

मैं क्रॉस-प्लेटफ़ॉर्म टूलकिट का उपयोग करता हूं क्योंकि उनके पास बेहतर डिज़ाइन है, इसलिए नहीं कि मैं क्रॉस-प्लेटफ़ॉर्म होने की कोशिश कर रहा हूं। उदाहरण के लिए, मैं केवल Windows प्लेटफ़ॉर्म को लक्षित करके C ++ में लिखी परियोजनाओं पर काम करता हूं। क्या मैं win32 या MFC का उपयोग करता हूं, देशी टूलकिट के लिए बहुत अधिक विकल्प उपलब्ध हैं?

पवित्र fsck नहीं! वे बहुत स्पेगेटी कचरे का सबसे खराब ढेर मैंने कभी देखा है! अंतर्निहित ओएस के "संदेश" सिस्टम में घटना प्रणाली का प्रत्यक्ष युग्मन अविश्वसनीय रूप से अनइंस्टिट्यूट है और तेजी से यूआई प्रोग्राम बनाने के लिए आवश्यक अभिव्यक्ति का अभाव है। उच्च स्तर के सार, वर्तमान में केवल क्रॉस-प्लेटफ़ॉर्म टूलकिट द्वारा प्रदान किए गए हैं, कार्य के लिए बिल्कुल आवश्यक हैं।

वह भी सिर्फ एक उदाहरण है। मैं क्रॉस-प्लेटफ़ॉर्म टूलकिट द्वारा बेहतर काम करने वाली चीजों की सूची पर और उस पर खड़खड़ कर सकता था। तथ्य यह है कि ग्राफिकल इंटरफेस अलग-अलग की तुलना में एक दूसरे के समान हैं। उदाहरण के लिए विंडोज बनाम लिनक्स पर एक विंडो प्रोग्राम के बीच बहुत कम भिन्नता है। यूआई प्रोग्राम बनाते समय आपके द्वारा की जाने वाली चीजों के प्रकार लगभग हमेशा एक ही तरह के होते हैं, चाहे आप किसी भी ओएस को लक्षित कर रहे हों ... और केवल फोन / पाम बनाम डेस्कटॉप जैसे आर्किटेक्चर के बीच मामूली अंतर। फ़ील्ड ने केवल क्रॉस-प्लेटफ़ॉर्म कार्यप्रणाली पर ध्यान केंद्रित किया है क्योंकि ए) यह बहुत सारे लोगों के लिए आवश्यक है और बी) यह सभी एक ही श! टी है।


0

क्रॉस-प्लेटफ़ॉर्म फ्रेमवर्क बनाने के खिलाफ एक तर्क यह है कि इसे हमेशा सबसे कम आम भाजक पर लक्षित किया जाएगा - फ्रेमवर्क के ग्राहक केवल एक बार कोड लिखना चाहते हैं और यह 'सर्वत्र' समर्थित है। तो एक भयानक हार्डवेयर प्लेटफ़ॉर्म किसी भी अन्य प्लेटफ़ॉर्म की तरह दिखाई देगा जो उस फ्रेमवर्क को चलाता है क्योंकि आप प्लेटफ़ॉर्म-विशिष्ट सुविधाओं का लाभ नहीं उठा सकते हैं।

समय के साथ, यह दुर्भाग्य से उनके सबसे लोकप्रिय मंच की ओर झुकाव और अन्य प्लेटफार्मों के लिए एक साथ हैकिंग या बजट / लोकप्रियता समाप्त होने पर उन्हें बंद कर देता है।

प्लेटफ़ॉर्म-विशिष्ट क्षमताओं को भुनाने का एक तरीका यह है कि #if PLATFORM_FEATURE_Xसभी विशिष्ट कोड या समकक्ष रनटाइम चेक के चारों ओर एक निर्माण जैसा कुछ हो, जिसके परिणामस्वरूप कोड ब्लोट होता है। यह बहुत जल्दी थकाऊ हो जाता है, क्योंकि एक ही मंच के वेरिएंट को विशिष्ट हैंडलिंग की आवश्यकता होगी। उदाहरण के लिए, कुछ XBox v1 में कोई हार्ड ड्राइव नहीं था, इसलिए क्रॉस-प्लेटफ़ॉर्म टूल का उपयोग करने वाले गेम पीसी संस्करण की तुलना में कैशिंग के लिए इसका उपयोग नहीं कर सकते हैं, जहां आप हार्ड ड्राइव की गारंटी दे सकते हैं।

डेस्कटॉप / उत्पादकता अनुप्रयोगों के लिए, प्लेटफ़ॉर्म लुक-एंड-फ़ील महत्वपूर्ण लगता है, लेकिन कई अनुप्रयोगों की अपनी शैली है, इसलिए सभी प्लेटफार्मों पर समान दिखने की कोई समस्या नहीं है, जैसे कि AIR के साथ निर्मित ऐप।

Apple, Sony, Nintendo और Toshiba जैसे हार्डवेयर विक्रेता यह सुनिश्चित करना चाहेंगे कि उनके उत्पाद प्रतिस्पर्धा से खुद को अलग करने के लिए कुछ करें, जैसे टच, एक्सेलेरोमीटर / ग्रियोस्कोप, ब्लू-रे, 3 डी डिस्प्ले। यह संभावना नहीं है कि कभी भी एक प्लेटफ़ॉर्म होगा जिसमें सभी प्रतियोगियों की सभी विशेषताओं को एक (लागत और जटिलता के कारण) में रोल किया गया है, इसलिए एक बाहर जीत जाएगा।

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