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

نشرت إطلاق المشروع بريثون 3.9 (متصفح Python) مع تطبيق لغة برمجة Python 3 للتنفيذ على جانب متصفح الويب، مما يسمح لك باستخدام Python بدلاً من JavaScript لتطوير البرامج النصية للويب. كود المشروع مكتوب بلغة بايثون و وزعت من خلال بموجب ترخيص BSD. الإصدار الجديد يتميز بتوافقه مع بيثون 3.9 وتحديث المكتبة القياسية.

ربط المكتبات brython.js и brython_stdlib.js، يمكن لمطور الويب استخدم لغة بايثون لتحديد منطق الموقع من جانب العميل باستخدام بايثون بدلا من جافا سكريبت. لتضمين كود Python في الصفحات، استخدم العلامة с mime-типом «text/python». Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (). Из скрипта предоставляется полный доступ к элементам и событиям DOM.
بالإضافة إلى إمكانية الوصول إلى مكتبة Python القياسية، فهي توفر مكتبات متخصصة للتفاعل مع مكتبات DOM وJavaScript مثل jQuery وD3 وHighcharts وRaphael. يتم دعم استخدام أطر عمل CSS Bootstrap3 وLESS وSASS.

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

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

وقت الاستيراد
استيراد الرياضيات

من مستند استيراد المتصفح
استيراد المتصفح.المؤقت

المحتوى = الوثيقة ["المحتوى"]

...

قماش = content.select_one(".clock")

إذا كان hasattr(canvas, 'getContext'):
ctx = Canvas.getContext("2d")

browser.timer.set_interval(set_clock, 100)
show_hours()
آخر:
content.select_one('.navig_zone').html = "اللوحة القماشية غير مدعومة"

</script>

المصدر: opennet.ru

إضافة تعليق