Έκδοση Brython 3.10, υλοποιήσεις της γλώσσας Python για προγράμματα περιήγησης ιστού

Παρουσιάστηκε μια έκδοση του έργου Brython 3.10 (Browser Python) με μια υλοποίηση της γλώσσας προγραμματισμού Python 3 για εκτέλεση στην πλευρά του προγράμματος περιήγησης ιστού, επιτρέποντας τη χρήση Python αντί JavaScript για την ανάπτυξη σεναρίων για τον Ιστό. Ο κώδικας του έργου είναι γραμμένος σε Python και διανέμεται με την άδεια BSD.

Συμπεριλαμβάνοντας τις βιβλιοθήκες brython.js και brython_stdlib.js, ένας προγραμματιστής ιστού μπορεί να χρησιμοποιήσει τη γλώσσα Python για να καθορίσει τη λογική του ιστότοπου στην πλευρά του πελάτη, χρησιμοποιώντας Python αντί για JavaScript. Για να συμπεριλάβετε κώδικα Python σε σελίδες, χρησιμοποιήστε την ετικέτα с mime-типом «text/python». Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (). Из скрипта предоставляется полный доступ к элементам и событиям DOM. Помимо доступа к стандартной библиотеке Python предлагаются специализированные библиотеки для взаимодействия с DOM и JavaScript-библиотеками, такими как jQuery, D3, Highcharts и Raphael. Поддерживается использование CSS-фреймворков Bootstrap3, LESS и SASS.

Εκτέλεση κώδικα Python από μπλοκ производится через предварительную компиляцию этого кода, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «». На основе Python-кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js предлагает для выполнения Python-кода в браузере скомпилированный в asm.js интерпретатор CPython, а Skulpt реализует интерпретатор на JavaScript).

Η τελική απόδοση των περισσότερων λειτουργιών σε σενάρια Python που είναι ενσωματωμένα σε ιστοσελίδες είναι κοντά στην απόδοση του CPython. Η καθυστέρηση εμφανίζεται μόνο στο στάδιο της μεταγλώττισης, αλλά για την εξάλειψή της, παρέχεται η δυνατότητα φόρτωσης προμεταγλωττισμένου κώδικα JavaScript, ο οποίος χρησιμοποιείται για την επιτάχυνση της φόρτωσης της τυπικής βιβλιοθήκης (η Brython παρέχει εργαλεία για τη δημιουργία βιβλιοθηκών JavaScript βασισμένες σε λειτουργικές μονάδες Python ).

Η νέα έκδοση διαθέτει συμβατότητα με την Python 3.10, συμπεριλαμβανομένης της υποστήριξης για τελεστές αντιστοίχισης προτύπων (ταιριάζουν/πεζά). Η νέα έκδοση προσφέρει επίσης μια αρχική υλοποίηση ενός δέντρου αφηρημένης σύνταξης (AST, Abstract Syntax Tree) για τη γλώσσα Python, το οποίο μπορεί στη συνέχεια να χρησιμοποιηθεί για τη δημιουργία κώδικα JavaScript από ένα καθολικό AST.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο