2012-08-28 29 views
19

सवाल यह है: वेब प्रोग्रामिंग के लिए अधिक व्यापक रूप से उपयोग क्यों नहीं किया जाता है (रुबी में) और कोरआउट (पायथन में)?पाइथन और रूबी में वेब प्रोग्रामिंग के लिए कोरआउट या निरंतरता। क्यों नहीं?

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

ब्रूस टेट उसके परे जावा (ओ रेली, 2005) में पर रूबी और Seaside वेब प्रोग्रामिंग में के रूप में रोमांचक नए घटनाक्रम के बारे में बात की थी। मेरे लिए, समुद्रतट असली सफलता थी: स्मॉलटाक निरंतरता का उपयोग करके, समुद्रतट ने इसे जटिल जटिल अनुरोध/प्रतिक्रिया अनुक्रमों के लिए बहुत आसान बना दिया।

मुझे पता है कि टॉरनाडो में पाइथन कोरोटाइन्स का उपयोग किया जा रहा है और कॉलबैक को कम करने के लिए ट्विस्ट किया गया है, लेकिन ऑनलाइन खरीद पूरी करने के लिए HTTP अनुरोधों के अनुक्रम को संभालने के लिए एक कोरआउट में एक दृश्य/नियंत्रक लिखने की तुलना में यह कुछ हद तक निम्न स्तर है , उदाहरण के लिए।

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

+1

यदि आप पर्याप्त स्मार्ट हैं, तो इसके साथ क्यों न जाएं? – mlvljr

+7

mlvljr: मुझे यकीन है कि मैंने कोशिश की है कि लोगों ने कोशिश की है और मैं इसे स्वयं करने से पहले उनसे सुनना चाहता हूं। –

+3

मुझे डर है कि इस सवाल का सवाल है [एफएक्यू के "पूछो मत"] (http://stackoverflow.com/faq#dontask) खंड। आपके पास कई प्रश्न हैं, और प्रत्येक काफी लंबी चर्चा हो सकती है। –

उत्तर

5

मैंने समुद्रतट का उपयोग किया है और निरंतरता क्लाइंट सर्वर वेबपैप्स विकसित करने के लिए एक सुंदर मॉडल है। वे पारंपरिक क्लाइंट/सर्वर अनुप्रयोगों को सरल बनाते हैं जिन्हें मैं पर विश्वास नहीं कर सकता था कि कोई अन्य लापरवाही क्यों नहीं कर रही थी।

लेकिन दुर्भाग्य से वेबपैप्स वे नहीं होते थे जो वे करते थे। केवल एक पृष्ठ का अनुरोध करने के बजाय, अब AJAX के साथ अलग-अलग समय पर कई अनुरोध हैं। यही कारण है कि निरंतरता उतनी उपयोगी नहीं होती जितनी वे होती थीं।

यहां तक ​​कि एवी ब्रायंट (समुद्रतट के मूल लेखक) ने कहा है कि अजाक्स बनाने के तहत कॉलबैक आसान (घटना संचालित प्रोग्रामिंग) निरंतरता से अधिक महत्वपूर्ण है।

अधिक के लिए यह Quora चर्चा पर एक नज़र डालें: http://www.quora.com/Whats-the-best-continuation-based-web-framework

+2

elviejo: आपकी अंतर्दृष्टि और क्वारा उत्तर के लिंक के लिए धन्यवाद जो वास्तव में अच्छा है। –

+2

यह एक बहुत अच्छा मुद्दा है।मैं कहूंगा कि एपीआई कॉल पर निरंतरता बेहतर अनुकूल है जिसे उत्तराधिकार में बनाया जाना चाहिए। – rbp

1

आप आवेदन निरंतरता/coroutines ढांचा, साथ ही समर्थन लाइब्रेरी भी पर लिखा जाना चाहिए। शुरुआती लोगों द्वारा समझने के लिए यह छोटा मॉडल नहीं है। इसके अलावा गीवेन्ट जैसे बहुत ही आसान ढांचे हैं, जो हरी धागे बनाने में समान संभावनाएं प्रदान करते हैं, और बंदर पैचिंग के कारण उपयोग करना आसान है।

1

मुख्य रूप से गैर तकनीकी कारणों से। समुद्रतट या यहां तक ​​कि स्मॉलटाक को जानने वाले लोगों की संख्या कम है, इसलिए सस्ते प्रोग्रामर का कोई बड़ा पूल नहीं है जिसे किराए पर लिया जा सकता है। इस वजह से सेवा प्रदाताओं की संख्या एक समुद्रतट प्रणाली को स्थापित और बनाए रखने के बारे में जानना भी कम है।