2012-06-05 19 views
6

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

उत्तर

7

संक्षिप्त संस्करण: पीओओबीजेसी जिस तरह से आप मैक ओएस एक्स एपीआई कहते हैं, स्क्रिप्टिंग ब्रिज जिस तरह से आप अन्य ऐप्स के स्क्रिप्टिंग इंटरफेस से बात करते हैं। अधिक जानकारी में:

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

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

तो, पीओओबीजेसी एक स्क्रिप्टिंग पुल का उदाहरण नहीं है। एक स्क्रिप्टिंग पुल का एक उदाहरण है, ठीक है, स्क्रिप्टिंग ब्रिज, या एप्सस्क्रिप्ट (जो बेहतर है, लेकिन ऐप्पल से नहीं, और अब बनाए रखा नहीं है)।

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

+0

इसके अलावा, आप किन ऐप्स को एकीकृत करने का प्रयास कर रहे हैं, इस पर निर्भर करते हुए, आपको 'py-appscript' स्क्रिप्टिंग ब्रिज की तुलना में बेहतर विकल्प मिल सकता है। डेवलपर के बहिष्करण अस्वीकरण द्वारा बंद न करें, यह अभी भी सबसे अच्छा ऐप्पल इवेंट स्क्रिप्टिंग इंटरफ़ेस है, खासकर फंकी स्क्रिप्टिंग इंटरफेस वाले ऐप्स के लिए। http://pypi.python.org/pypi/appscript/ –

+3

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

+1

क्षमा करें। मैंने ऐपस्क्रिप्ट के आपके उल्लेख को अनदेखा कर दिया। मैं आपके आकलन से सहमत हूं। –