ब्रायथन, क्लाइंट-साइड वेब प्रोग्रामिंग के लिए एक पायथन 3 कार्यान्वयन

हाल ही में ब्रायथन 3.10 परियोजना के नए संस्करण के विमोचन की घोषणा की गई (ब्राउज़र पायथन) जो के साथ आता है वेब ब्राउज़र पक्ष पर निष्पादन के लिए पायथन 3 प्रोग्रामिंग भाषा का कार्यान्वयन, आपको वेब के लिए स्क्रिप्ट विकसित करने के लिए जावास्क्रिप्ट के बजाय पायथन का उपयोग करने की अनुमति देता है।

brython.js और brython_stdlib.js पुस्तकालयों को जोड़कर, एक वेब डेवलपर जावास्क्रिप्ट के बजाय पायथन का उपयोग करके क्लाइंट-साइड साइट लॉजिक को परिभाषित करने के लिए पायथन का उपयोग कर सकता है।

पृष्ठों में पायथन कोड शामिल करने के लिए, आपको टैग का उपयोग करना होगा "टेक्स्ट/पायथन" माइम प्रकार के साथ, यह पृष्ठ में कोड एम्बेड करने और बाहरी स्क्रिप्ट लोड करने दोनों की अनुमति देता है ( ). El script proporciona acceso completo a los elementos y eventos DOM.

मानक पायथन पुस्तकालय तक पहुँचने के अलावा, विशेष पुस्तकालय भी हैं DOM और JavaScript लाइब्रेरी जैसे jQuery, D3, Highcharts, और Raphael के साथ इंटरैक्ट करने के लिए। CSS फ्रेमवर्क बूटस्ट्रैप3, LESS और SASS का उपयोग समर्थित है।

एक वेब ब्राउज़र में पायथन चलाने में सक्षम होने की अनुमति देता है:

  • सर्वर और ब्राउज़र पर समान पायथन कोड चलाएँ।
  • पायथन का उपयोग करके विभिन्न ब्राउज़र एपीआई के साथ काम करें
  • पायथन के साथ दस्तावेज़ ऑब्जेक्ट मॉडल (डीओएम) में हेरफेर करें
  • Vue.js और jQuery जैसी मौजूदा JavaScript लाइब्रेरी के साथ इंटरैक्ट करने के लिए Python का उपयोग करें
  • ब्रायथन संपादक के साथ पायथन छात्रों को पायथन भाषा सिखाएं
  • पायथन में प्रोग्रामिंग करते समय मस्ती की भावना रखें

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

ब्लॉक से पायथन कोड निष्पादित करना se realiza mediante la compilación previa de este código पेज लोड होने के बाद ब्रायथन इंजन द्वारा। संकलन ब्रायथन () फ़ंक्शन को कॉल करके शुरू किया गया है, उदाहरण के लिए « ».

पायथन कोड के आधार पर, एक जावास्क्रिप्ट प्रतिनिधित्व बनता है, जिसे तब ब्राउज़र के मानक जावास्क्रिप्ट इंजन द्वारा निष्पादित किया जाता है (तुलना के लिए, PyPy.js प्रोजेक्ट ब्राउज़र में पायथन कोड चलाने के लिए asm.js में संकलित एक CPython दुभाषिया प्रदान करता है, और स्कल्प्ट जावास्क्रिप्ट में दुभाषिया को लागू करता है।)

ब्रायथन साइट नोट करती है कि कार्यान्वयन निष्पादन गति CPython के बराबर है. लेकिन ब्रायथन ब्राउज़र में चलता है और इस वातावरण में संदर्भ ब्राउज़र इंजन में निर्मित जावास्क्रिप्ट है। नतीजतन, ब्रायथन को अच्छी तरह से ट्यून और हस्तलिखित जावास्क्रिप्ट की तुलना में धीमा होने की उम्मीद है।

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

हालांकि, कथित प्रदर्शन को ब्रायथन का उपयोग करने से न रोकें। उदाहरण के लिए, पायथन मॉड्यूल आयात करने से सर्वर से संबंधित मॉड्यूल डाउनलोड हो सकता है

के बारे में नया संस्करण, यह पायथन 3.10 . के साथ अपनी संगतता के लिए विशिष्ट है, पैटर्न मिलान (मैच / केस) के लिए ऑपरेटर समर्थन सहित।

नया संस्करण भी ओसार सिंटैक्स ट्री का प्रारंभिक कार्यान्वयन प्रदान करता है (एएसटी, एब्सट्रैक्ट सिंटेक्स ट्री) पायथन भाषा के लिए, जिसका उपयोग तब एक सार्वभौमिक एएसटी से जावास्क्रिप्ट कोड उत्पन्न करने के लिए किया जा सकता है।

ब्रायथन को लागू करने के लिए इसे वेबसाइट पर निम्नलिखित कोड जोड़कर किया जा सकता है:

<script type="text/javascript"
src="https://cdn.jsdelivr.net/npm/brython@3.9/brython.min.js">
</script>
<script type="text/javascript"
src="https://cdn.jsdelivr.net/npm/brython@3.9/brython_stdlib.js">
</script> 

O

<script type="text/javascript"
src="https://cdn.jsdelivr.net/npm/brython@3/brython.min.js">
</script>
<script type="text/javascript"
src="https://cdn.jsdelivr.net/npm/brython@3/brython_stdlib.js">
</script>

या इसे निम्न कमांड चलाकर सर्वर साइड पर भी स्थापित किया जा सकता है:

pip install brython

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


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।