2012-09-14 15 views
10

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

+0

यही बात beezneez है। –

उत्तर

12

जबकि जावास्क्रिप्ट पायथन दुभाषिया मौजूद हैं: http://syntensity.com/static/python.html, वे एक का उपयोग नहीं कर रहे हैं। धोखा देने के लिए यह बहुत आसान होगा अगर उन्होंने कम से कम अपने दुभाषिया पर सत्यापन के लिए कार्यक्रम नहीं चलाए।

उदसिटी पर नेटवर्क गतिविधि को देखने के बाद मैं देख सकता हूं कि वे डेटा के समूह के साथ एक अजाक्स कॉल करते हैं और फिर जेएसओएन में प्रोग्राम के परिणाम प्राप्त करते हैं।

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

2

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

5

बहुत यहां पार्टी के लिए देर हो चुकी है, लेकिन मैं Udacity में एक इंजीनियर के रूप में काम करते हैं, तो मैं सोचा मैं इसे एक शॉट देने के चाहते हैं ।

वहाँ दो बुनियादी चीजों पर जा रहे हैं: हालांकि हम पिछले कुछ वर्षों में कई अलग अलग संपादकों का इस्तेमाल किया है

  1. वर्तमान वाक्य रचना हाइलाइटिंग और संपादन, एक Codemirror implementation द्वारा प्रदान की जाती है।
  2. जब आप सबमिट (या रन) हिट करते हैं, तो आपका कोड पैक हो जाता है और एक सैंडबॉक्स वाले क्लस्टर पर भेज दिया जाता है जिसे हम निष्पादन के लिए चलाते हैं। यदि आप सबमिट कर रहे हैं, तो यह वह जगह है जहां हम आपके कोड के खिलाफ अपना परीक्षण चलाते हैं और यह देखते हैं कि यह "ग्रेड" है या नहीं। उस से आउटपुट (विभिन्न रूपों में) को फ्रंट एंड पर वापस पाइप किया जाता है, और आपको अपना फीडबैक मिलता है।

काफी के रूप में तेजी से स्थानीय स्तर पर यह चल रहा है के रूप में नहीं है, लेकिन यह यकीन है कि धड़क रहा है पहली बार के लिए अजगर स्थापित करने के लिए कोशिश कर रहा है कुछ सौ हजार लोगों का समर्थन;)

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