2011-09-07 13 views
23

क्या सर्वर-साइड वेब अनुप्रयोगों को विकसित करने के लिए ओबीजेसी (ऐप्पल स्वाद आवश्यक नहीं) का उपयोग करना संभव/व्यवहार्य है? जीएनयू ओबीजेसी टूलचेन सभी प्रयोग योग्य है? कृपया अपने विचारों और अनुभवों को साझा करें।वेब विकास में उद्देश्य-सी

अद्यतन। मैं कंक्रीट व्यावहारिक अनुभव के साथ और अधिक जवाब सुनना चाहता हूं, जैसे "मैंने कोशिश की/उपयोग .... और यह बहुत अच्छा/बेकार है, क्योंकि ..."। 300 बक्षीस!

अपडेट 2। मेरे प्रश्न के पीछे तर्क यह है कि मैं एक बड़े वेब-आधारित बैकएंड के साथ एक आईओएस ऐप विकसित करने वाला हूं और सोचा कि दोनों भागों के लिए एक ही टूलचेन/आईडीई का उपयोग करना अच्छा होगा। लेकिन, हां, अब तक के उत्तरों से पता चलता है कि यह संभव नहीं होगा। समय लेने के लिए सभी को धन्यवाद।

उत्तर

17

यह जवाब है कि बाजार निश्चित रूप से निश्चित रूप से बस गया है कि हाँ, यह संभव है, और नहीं, बाजार पर ऐसी चीज को धक्का देने की कोशिश करना संभव नहीं है। ऐप्पल के वेब ऑब्जेक्ट्स (ऐप्पल ऑनलाइन स्टोर का उपयोग करता है) उद्देश्य-सी होता था और यहां तक ​​कि वे इसे जावा में ले जाते थे।

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

का सवाल है "मैं का उपयोग किया है" बिट, हाँ, मैं WebObjects की ऑब्जेक्टिव-सी संस्करण दिन में वापस किया करते थे। यह अपने समय के लिए बहुत अच्छा था, लेकिन उद्देश्य-सी की तुलनात्मक रूप से कम-स्तर की स्मृति आवंटन आवश्यकताओं और इसके गैर-सी वाक्यविन्यास ने इसे थोड़ा अजीब बना दिया। और इसकी मजबूत टाइपिंग कोर विकास के लिए बहुत अच्छी थी लेकिन वेब विकास के "स्क्रिप्टिंग" पहलुओं के लिए बोझिल थी।

अंत में यदि कोई भाषा ट्यूरिंग-पूर्ण है तो आप सैद्धांतिक रूप से एक भाषा में कुछ भी कर सकते हैं जो आप दूसरे में कर सकते हैं, लेकिन पार्सर्स, स्क्रिप्टिंग, डेटाबेस इंटरैक्शन, इंडेक्सिंग इत्यादि के लिए पुस्तकालयों के पारिस्थितिकी तंत्र की कमी का मतलब है आप जावा या जेवीएम-संगत भाषा की तुलना में एक सुंदर गहरी घाटी से शुरू करेंगे।

8

Javascript फ़्रेमवर्क Cappuccino कहा जाता है बहुत वे ऑब्जेक्टिव-जम्मू फोन ऑब्जेक्टिव-सी के समान सिंटैक्स का उपयोग करता है कि नहीं है। लेकिन लंबे समय तक कोको डेवलपर के रूप में, मैं Sproutcore पसंद करता हूं जो उद्देश्य-सी वाक्यविन्यास की प्रतिलिपि नहीं करता है, लेकिन यह कोको से कुछ विचार उधार लेता है क्योंकि यह पूर्व ऐप्पल इंजीनियरों द्वारा बनाया गया था।

आप सर्वर साइड विकास में सोच रहे थे, तो मुझे लगता है कि आप यह कर सकता है, लेकिन यह शायद कुछ लोकप्रिय सर्वर साइड भाषा सीखने की यह सब और ऑब्जेक्टिव-सी के साथ चलाने के लिए कम से कम प्रयास ले जाएगा

4

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

6

एप्पल के WebObjects मूल रूप से एक ऑब्जेक्टिव-सी मंच था इससे पहले कि यह जावा पर स्थापित किया गया। जीएनयूएसटीपी की एक उप-परियोजना, जिसे GNUStepWeb कहा जाता है, का उद्देश्य वेबऑब्जेक्ट्स 4.5 के साथ संगत होना है --- उद्देश्य-सी (2000 में जारी) का समर्थन करने के लिए अंतिम संस्करण। मुझे यकीन नहीं है कि कार्यान्वयन कितना पूरा है, लेकिन एक साल में ज्यादा विकास नहीं हुआ है।

7

फ्रोथकिट है। हालांकि, इसे 2010 से अद्यतन नहीं किया गया है, मुख्य रूप से रेल और डीजेगो जैसी अन्य भाषाओं के परिपक्व ढांचे के कारण।

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