بریتون ۳.۱۱ (پایتون مرورگر) اکنون در دسترس است. این نرمافزار زبان برنامهنویسی پایتون ۳ را برای مرورگرهای وب پیادهسازی میکند و به پایتون اجازه میدهد تا به جای جاوا اسکریپت برای اسکریپتنویسی وب استفاده شود. کد این پروژه با پایتون نوشته شده و تحت مجوز BSD توزیع شده است.
با اضافه کردن کتابخانههای brython.js و brython_stdlib.js، یک توسعهدهنده وب میتواند از پایتون برای تعریف منطق سمت کلاینت یک وبسایت استفاده کند و به جای جاوا اسکریپت از پایتون استفاده کند. برای اضافه کردن کد پایتون به صفحات، از تگ <br> استفاده کنید. с 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).
عملکرد کلی اکثر عملیات در اسکریپتهای پایتون تعبیهشده در صفحات وب نزدیک به CPython است. تنها تأخیر در مرحله کامپایل است، اما برای کاهش این مشکل، گزینهای برای بارگذاری کد جاوا اسکریپت از پیش کامپایلشده ارائه شده است. این برای سرعت بخشیدن به بارگذاری کتابخانه استاندارد استفاده میشود (Brython ابزارهایی برای ایجاد کتابخانههای جاوا اسکریپت مبتنی بر ماژولهای پایتون ارائه میدهد).
این نسخه جدید به دلیل سازگاری با CPython 3.11 و پیادهسازی اکثر ویژگیهای جدید در آن شاخه، از جمله پشتیبانی از گروههای استثنا و عبارت "except*"، شرح دقیق عبارات مشکلساز در پیامهای تشخیصی و پیوست کردن یادداشتها به استثناها، قابل توجه است.
منبع: opennet.ru
