2009-08-31 19 views
12

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

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

यदि कोई मेरी मदद कर सकता है, तो किसी भी संसाधन या ट्यूटोरियल को स्थापित करने, कैसे, और लिंक करने की आवश्यकता पर कुछ प्रकाश डाल सकता है, तो मैं वास्तव में इसकी सराहना करता हूं।

मदद के लिए अग्रिम धन्यवाद!

अद्यतन: मुझे लगता है कि यह एक लोकप्रिय सवाल है, मुझे अभी इसके लिए 'उल्लेखनीय प्रश्न' बैज मिला है, इसलिए मैंने सोचा कि मैं इस पृष्ठ पर आने वाले किसी भी व्यक्ति को उत्तर प्राप्त करने के बाद जो कुछ भी किया था, उसे अपडेट कर दूंगा।

दुर्भाग्यवश, मै मैक एप्लिकेशन बनाने के लिए पायथन का उपयोग करने में सक्षम नहीं था। यह उस समय निराशाजनक था, लेकिन शायद एक अच्छी बात है। मैंने अपनी परियोजना के लिए सी # में एक विंडोज ऐप बनाया, यह एक अनुरूपित वातावरण में असेंबली ऐप्स बनाने और चलाने के लिए एक उपकरण था। मेरे पाठ्यक्रम शिक्षक ने अब अपने उपकरण का उपयोग अपने पाठ्यक्रम के बजाय पाठ्यक्रम सिखाने के लिए किया है! मुझे कंप्यूटिंग प्रोजेक्ट (9 0% से अधिक) पर बहुत अधिक स्कोर मिला और इससे मुझे मेरे कंप्यूटिंग ए-लेवल (उच्चतम ग्रेड उपलब्ध) में ए * प्राप्त करने में योगदान मिला और इसके परिणामस्वरूप मैं कंप्यूटर विज्ञान का अध्ययन करने के लिए साउथेम्प्टन विश्वविद्यालय में गया।

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

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

+0

Have आपने PyObjC को स्थापित करने के लिए मैकपोर्ट का उपयोग करने का प्रयास किया? –

+1

क्या आपने डेवलपर्स टूल का नवीनतम संस्करण स्थापित किया है? मैंने कभी भी पीओओबीजेसी का उपयोग नहीं किया है, लेकिन मुझे नहीं लगता कि यह उद्देश्य-सी का उपयोग करने से कहीं अधिक आसान होगा। यह सीखने के लिए एक आसान भाषा है और चूंकि मैक ओएस एक्स एपीआई को इसके साथ दिमाग में डिजाइन किया गया था, इसलिए वे इसके साथ बहुत अच्छी तरह से काम करते हैं। यदि आप स्मृति प्रबंधन के बारे में चिंता नहीं करना चाहते हैं तो आप कचरा संग्रह का भी उपयोग कर सकते हैं, लेकिन अंतर्निहित संदर्भ गिनती इतना आसान है कि मैंने कभी कचरा संग्रह का उपयोग करने की तरह महसूस नहीं किया है। यह कुछ भी है जो आपको पता होना चाहिए कि क्या आप मैक विकास जारी रखना चाहते हैं। – Amok

+0

उत्तर के लिए धन्यवाद, मैं PyObjc स्थापित करने के लिए मैकपोर्ट का उपयोग करने का प्रयास करूंगा, और मेरे पास नवीनतम एक्सकोड 3.2, देव उपकरण और एसडीके हैं। मैंने उद्देश्य-सी की कोशिश की है और मेरे पास एक पुस्तक है, लेकिन अतीत में केवल एक शौक के रूप में और हाईस्कूल कोर्स के रूप में बुनियादी प्रोग्रामिंग करने के बाद, मैंने इसके साथ संघर्ष किया है। यह बहुत मुश्किल लगता है कि मैंने सी # .NET किया है। इसके अलावा, अगर मुझे सॉफ़्टवेयर काम नहीं मिल रहा है, तो वहां बहुत कुछ है और मैं किसी को भी नहीं जानता जो चीजें गलत होने पर मेरी मदद कर सकती है। कम से कम मेरे पास एक दोस्त है जो एक पायथन गुरु है यदि मैं PyObjc का उपयोग करना चुनता हूं। – danpalmer

उत्तर

18

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

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

यदि आप सीखना चाहते हैं, तो हारून हिलेग्रास की पुस्तक शुरू करने के लिए एक अच्छी जगह है। सौभाग्य!

+0

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

+0

ओह, और मेरे पास पहले से ही हारून हिलेगैस की पुस्तक है, लेकिन तथ्य यह है कि इसमें मेमोरी प्रबंधन के लिए कोड भी मुझे डराता है। – danpalmer

+0

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

7

आपका मतलब Checkout जैसा है? :-) मैं केवल इसका उल्लेख करता हूं क्योंकि चेकआउट बहुत ही खूबसूरत है और पीओओबीजेसी के साथ लिखा गया है ...

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

मैं आपको सलाह देता हूं कि आप एसओ प्रश्न "Why is the PyObjC documentation so bad?" और "PyObjc vs RubyCocoa for Mac development: Which is more mature?" पर विचार करें और इससे पहले कि आप पूरी तरह से खुद को यह मान लें कि "केवल पीओओबीजेसी" चीजों को और अधिक आसान बना देगा। मैं पीओओबीजेसी को अपमानित करने से इनकार करता हूं क्योंकि यह काफी शक्तिशाली और अविश्वसनीय रूप से उपयोगी है, लेकिन यह महसूस होता है कि चांदी की गोली नहीं है, और कोई भी भाषा या तकनीक सभी समस्याओं के लिए सबसे अच्छी नहीं है।

उद्देश्य-सी भाषा सरल और सुंदर सीधा है। कोको ढांचे आमतौर पर नए कोको प्रोग्रामर के लिए सीखने की अवस्था पर हावी है। इसके अलावा, आपके पास अपने प्रश्नों के उत्तर देने में सहायता के लिए स्टैक ओवरफ्लो और कई अन्य संसाधन हैं।("pyobjc" tag की गतिविधि द्वारा परखने के बाद, आप भी इतने पर अच्छा Objective-C help हो रही का एक बेहतर मौका खड़े हैं।)

3

मैं शायद ही अपने आप PyObjC उपयोग करते हैं, लेकिन मैं आपको क्रम में हिमपात तेंदुए डीवीडी पर Xcode इंस्टॉलर को चलाने की जरूरत का मानना ​​है PyObjC का उपयोग करने के लिए।

इसके अलावा, क्विन ने कहा, आपको अपने बालों को फाड़ने के बिना पीओओबीजेसी जैसे कोको पुल का उपयोग करने के लिए कम से कम कुछ उद्देश्य-सी को समझने की आवश्यकता होगी। यह सिर्फ आपको पूरी तरह से अपरिवर्तित नहीं करता है।

3

मैं यहां क्विन से सहमत होने जा रहा हूं। यहां तक ​​कि यदि आप पहले से ही पाइथन में कुशल हैं, तो पाइथन और कोको को इंटरफ़ेस करने का तरीका सीखना उद्देश्य-सी के साथ कोको सीखने से कहीं अधिक आसान नहीं होगा।

उद्देश्य-सी एक साधारण, साफ भाषा है जो ग्रोक के लिए काफी आसान है। जीयूआई का निर्माण करना और बैक-एंड तक इसे जोड़ना उद्देश्य-सी को बैक एंड लिखने के लिए सीखना कठिन होगा, और जीयूआई का निर्माण करना और इसे जोड़ना मुश्किल नहीं है।

the Cocoa app tutorial का पालन करें (यदि आप धीमे हो जाते हैं तो आपको एक दिन में इसे प्राप्त करने में सक्षम होना चाहिए, या शायद सप्ताहांत हो सकता है) और आप अपने रास्ते पर अच्छे होंगे।

4

और चेकआउट डेवलपर्स में से एक के रूप में मैं भी वजन करूँगा (हाय क्विन!)। हमने जो देखा है उससे पीओओबीजेसी हिम तेंदुए पर काफी अच्छी तरह से चलती है। हमने तेंदुए पर कुछ अनुकूलन के साथ नवीनतम एसवीएन संशोधन 2.2b में से एक बनाया है और बस साइट-पैकेज फ़ोल्डर पर स्थानांतरित हो गया है।

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

परियोजना के साथ गुड लक, और आप विशिष्ट स्थिति सवाल मुझे एक ईमेल ;-)

3

मैं लंबे समय से पाइथन डेवलपर हूं जो थोड़ी देर के लिए आईफोन ऐप्स कर रहा है (और केवल रन स्क्रिप्ट में ऐप्स के लिए फाइल बनाने के लिए मेरे पायथन ज्ञान का उपयोग करके), फिर कुछ पायओबीजेसी ऐप्स बनाना शुरू कर दिया।

मैं कहना है PyObjC काफी अभी भी उद्देश्य सी (जो मैं पहले से ही iPhone देव के माध्यम से जानते हैं) जानने के लिए चल रहा है लेकिन आप कई बहुत अच्छा लाभ प्राप्त करता है, तो आप इसके बजाय का उपयोग होगा,,

  • आसान यदि कोको
  • द्वारा styimied अजगर पुस्तकालयों का उपयोग आप जानते हैं (आप के लिए तेजी से)
  • विकल्प wxPython के लिए इसे छोड़ और जाने के लिए
  • थोड़ा तेज विकास समय (आप कम कोड लिख रहे हैं, और दो भाषाओं के बीच अनुवाद सुंदर है उपयोग करने के लिए आसान आसान)।

साथ ही, इंटरफ़ेस बिल्डर एक छोटे से मुश्किल अपेक्षाकृत बोल रहा करने के लिए इस्तेमाल करने के लिए है, लेकिन अगर आप एक अजगर देव कर रहे हैं, यह आप वास्तव में एक कार्यात्मक GUI बिल्डर किसी भी तरह की आदत हो की तरह नहीं है: सेशन

संबंधित मुद्दे