Serbestberdana Brython 3.10, pêkanînên zimanê Python ji bo gerokên webê

Serbestberdana projeya Brython 3.10 (Browser Python) bi pêkanîna zimanê bernamenûsê Python 3 ji bo darvekirinê li ser hêla geroka webê hate pêşkêş kirin, ku dihêle ku Python li şûna JavaScript-ê were bikar anîn da ku nivîsarên ji bo Webê pêşve bibe. Koda projeyê di Python de hatî nivîsandin û di bin lîsansa BSD de tê belav kirin.

Bi tevlêkirina pirtûkxaneyên brython.js û brython_stdlib.js, pêşdebirek malperê dikare zimanê Python bikar bîne da ku mantiqa malperê li ser milê xerîdar diyar bike, li şûna JavaScript Python bikar bîne. Ji bo ku koda Python li ser rûpelan têxin, tagê bikar bînin с mime-типом «text/python». Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (). Из скрипта предоставляется полный доступ к элементам и событиям DOM. Помимо доступа к стандартной библиотеке Python предлагаются специализированные библиотеки для взаимодействия с DOM и JavaScript-библиотеками, такими как jQuery, D3, Highcharts и Raphael. Поддерживается использование CSS-фреймворков Bootstrap3, LESS и SASS.

Bicîhkirina Koda Python ji Blocks производится через предварительную компиляцию этого кода, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «». На основе Python-кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js предлагает для выполнения Python-кода в браузере скомпилированный в asm.js интерпретатор CPython, а Skulpt реализует интерпретатор на JavaScript).

Performansa paşîn a piraniya operasyonên di skrîptên Python ên ku di rûpelên malperê de hatine bicîh kirin nêzî performansa CPython e. Dereng tenê di qonaxa berhevkirinê de pêk tê, lê ji bo jêbirina wê, şiyana barkirina koda JavaScript-a pêş-berhevkirî tê peyda kirin, ku ji bo bilezkirina barkirina pirtûkxaneya standard tê bikar anîn (Brython amûrên ji bo afirandina pirtûkxaneyên JavaScript-ê li ser bingeha modulên Python peyda dike. ).

Daxuyaniya nû bi Python 3.10 re hevahengiyê vedihewîne, di nav de piştgirî ji bo operatorên lihevhatina nimûneyê (hevkirin / doz). Guhertoya nû di heman demê de pêkanîna destpêkê ya darek hevoksaziya razber (AST, Dara Hevoksaziya Abstract) ji bo zimanê Python pêşkêşî dike, ku paşê dikare were bikar anîn da ku koda JavaScript ji AST-ya gerdûnî çêbike.

Source: opennet.ru

Add a comment