रिच जीयूआई ओएस एक्स फ्रेमवर्क?


6

डब्ल्यूपीएफ में संभव ग्राफिकल एप्लिकेशन के ओएस एक्स विकास के लिए आप क्या सलाह देंगे?

मेरी विशिष्ट पृष्ठभूमि स्मॉलटॉक & जावा में है, लेकिन वर्तमान में मैं ज्यादातर डीएचटीएम/.NET (ASP.NET/C#) में काम करता हूं।

15

कोको। कई लोगों द्वारा कभी भी सबसे अच्छा आवेदन ढांचा बनने के लिए माना जाता है। भाषा उद्देश्य-सी, स्मॉलटाक जैसी भाषा है जो जावा के रचनाकारों को प्रेरित करती है।

वास्तव में, ओएस एक्स विकास के लिए कोको के लिए कोई उचित विकल्प नहीं है, जब तक कि आपके पास क्रॉस-प्लेटफार्म बनने की इच्छा जैसी विशिष्ट आवश्यकताएं न हों।


1

मुझे यकीन नहीं है कि डब्ल्यूपीएफ क्या है, लेकिन ओएसएक्स मंच के लिए अधिकांश विकास कोको के साथ उद्देश्य-सी में किया जाता है। आप जावा जैसी अन्य भाषाओं के साथ बहिष्कृत कार्बन एपीआई का उपयोग कर सकते हैं, लेकिन ओएसएक्स के लिए नए एप्लिकेशन वास्तव में उद्देश्य-सी में विकसित किए जाने चाहिए। आप XCode के साथ अपने आईडीई के रूप में Apple's guide से शुरू कर सकते हैं।


2

कोको मैक ओएस एक्स पर उपयोग करने के लिए प्राथमिक ढांचा है। यह ऐप्पल का उपयोग करता है, यही वह है जो सबसे नया विकास उपयोग करता है, और यह वह जगह है जहां नई विशेषताएं मुख्य रूप से जोड़े जाती हैं।

यदि आप डब्ल्यूपीएफ से आ रहे हैं, तो मुझे लगता है कि आपको कोको में परिचित कुछ अवधारणाएं मिल सकती हैं। (इस तथ्य के बावजूद कि कोको थोड़ी पुरानी है।) यह पूरी तरह से एमवीसी के आसपास बनाया गया है, संपत्ति परिवर्तन सूचनाएं और बाइंडिंग हैं, एनीमेशन समर्थन है, एक दृढ़ता और वस्तु-ग्राफ प्रबंधन ढांचा है, और इसी तरह।

(इसके अलावा, आप "मैक" टैग को जोड़ने के लिए चाहते हो सकता है।)


4
इंटरफ़ेस बिल्डर के अलावा

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


2

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

छोटी सी पृष्ठभूमि में आपकी पृष्ठभूमि के साथ, मुझे उम्मीद है कि आप एक या दो दिन में उद्देश्य-सी उठा सकते हैं।


0

पिछले पोस्टर्स की तुलना में इसे अलग तरीके से रखने के लिए: यदि आप इंटरफ़ेसबिल्डर में अपना इंटरफ़ेस डिज़ाइन नहीं कर रहे हैं और इसे उद्देश्य-सी के साथ जोड़ते हैं, तो आप ऐसे एप्लिकेशन के साथ समाप्त होने जा रहे हैं जो दिखने, महसूस करने, कार्य करने, या मैकिंटोश एप्लिकेशन के तरीके को काम करना चाहिए, और यह उपयोगकर्ताओं के लिए एक थके हुए अंगूठे की तरह चिपकेगा। यह अन्य ऐप्स की तुलना में उपयोगकर्ता के लिए एक अप्रिय अनुभव होगा, और इसके कारण वे एक अलग एप्लिकेशन की इच्छा करेंगे।

क्यूटी जैसी टूलकिट स्वीकार्य हैं यदि आपका एप्लिकेशन पहले ही क्यूटी का उपयोग करता है और आप इसे तेजी से बंद करना चाहते हैं, लेकिन यदि आप एक नया एप्लीकेशन (या एक अलग जीयूआई) लिख रहे हैं तो ओबीजेसी या ओबीजेसी ++ का उपयोग करके कोको में लिखें।


0

आपको PyObjc पर एक नज़र डालें जो कि पाइथन प्रोग्रामिंग भाषा और उद्देश्य-सी के बीच एक पुल है, जिसमें कोको सहित मैक ओएस एक्स घटकों के लिए बाइंडिंग शामिल है।


0

एक छोटी सी पृष्ठभूमि के साथ, मैं सीधे कोको और उद्देश्य-सी की सिफारिश करता हूं। हालांकि, यदि आप गतिशील भाषा की तरफ झुका रहे हैं, तो RubyCocoa आपको रुबी का उपयोग करने देगा जो मुझे लगता है कि आपको पाइथन से चुनना आसान लगेगा।