إصدار Brython 3.11 ، تطبيقات لغة Python لمتصفحات الويب

تم تقديم إصدار لمشروع Brython 3.11 (متصفح Python) مع تطبيق لغة برمجة Python 3 للتنفيذ على جانب متصفح الويب، مما يسمح باستخدام Python بدلاً من JavaScript لتطوير البرامج النصية للويب. كود المشروع مكتوب بلغة بايثون ويتم توزيعه بموجب ترخيص 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.

تنفيذ كود بايثون من الكتل производится через предварительную компиляцию этого кода, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «». На основе Python-кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js предлагает для выполнения Python-кода в браузере скомпилированный в asm.js интерпретатор CPython, а Skulpt реализует интерпретатор на JavaScript).

الأداء النهائي لمعظم العمليات في نصوص Python المضمنة في صفحات الويب قريب من أداء CPython. يحدث التأخير فقط في مرحلة الترجمة، ولكن للتخلص منه، يتم توفير القدرة على تحميل كود JavaScript المترجم مسبقًا، والذي يستخدم لتسريع تحميل المكتبة القياسية (يوفر Brython أدوات لإنشاء مكتبات JavaScript بناءً على وحدات Python ).

يتميز الإصدار الجديد بتوفير التوافق مع CPython 3.11 وتنفيذ معظم الميزات الجديدة لهذا الفرع، بما في ذلك دعم مجموعات الاستثناءات وتعبير "باستثناء*"، وتفصيل التعبيرات الإشكالية في الرسائل التشخيصية، وإرفاق ملاحظات بالاستثناءات.

المصدر: opennet.ru

إضافة تعليق