Brython, Python 3 implementacija za web programiranje na strani klijenta

nedavno najavljeno je objavljivanje nove verzije projekta Brython 3.10 (Browser Python) koji dolazi s implementacija programskog jezika Python 3 za izvršavanje na strani web preglednika, omogućujući vam da koristite Python umjesto JavaScript za razvoj skripti za web.

Spajanjem knjižnica brython.js i brython_stdlib.js, web programer može koristiti Python za definiranje logike web stranice na strani klijenta, koristeći Python umjesto JavaScript.

Za uključivanje Python koda na stranice morate koristiti oznaku s mime tipom "text / python" to omogućuje i ugrađivanje koda na stranicu i učitavanje vanjskih skripti ( ). El script proporciona acceso completo a los elementos y eventos DOM.

Osim pristupa standardnoj knjižnici Python, postoje i specijalizirane knjižnice za interakciju s DOM i JavaScript knjižnicama kao što su jQuery, D3, Highcharts i Raphael. Podržana je upotreba CSS okvira Bootstrap3, LESS i SASS.

Mogućnost pokretanja Pythona u web pregledniku omogućuje:

  • Pokrenite isti Python kod na poslužitelju i pregledniku.
  • Radite s različitim API -jem preglednika pomoću Pythona
  • Manipulirajte objektnim modelom dokumenta (DOM) s Pythonom
  • Koristite Python za interakciju sa postojećim JavaScript knjižnicama poput Vue.js i jQuery
  • Naučite Python jezik studentima Pythona pomoću Brython uređivača
  • Zadržite osjećaj zabave dok programirate u Pythonu

Nuspojava korištenja Pythona u pregledniku je gubitak performansi u usporedbi s istim kodom u JavaScriptu.

Izvršavanje Python koda iz blokova se realiza mediante la compilación previa de este código Brythonovim strojem nakon učitavanja stranice. Kompilacija se pokreće pozivanjem funkcije brython (), na primjer dodavanjem « ».

Na temelju Python koda, formira se JavaScript predstava, koju zatim izvršava standardni JavaScript mehanizam preglednika (Za usporedbu, projekt PyPy.js nudi tumač CPython preveden u asm.js za pokretanje Python koda u pregledniku, a Skulpt tumač implementira u JavaScript.)

Brython site napominje da je brzina izvođenja implementacije usporediva s CPythonom. Ali Brython radi u pregledniku, a referenca u ovom okruženju je JavaScript ugrađen u mehanizam preglednika. Kao rezultat toga, očekujte da će Brython biti sporiji od dobro podešenog i rukom napisanog JavaScripta.

briton prevesti Python kod u JavaScript, a zatim pokrenuti generirani kod. Ovi koraci imaju utjecaj na ukupne performanse i Brython možda neće uvijek zadovoljiti vaše zahtjeve za izvedbom. U nekim slučajevima možda ćete morati delegirati izvršavanje koda na JavaScript ili čak WebAssembly. U odjeljku WebAssembly vidjet ćete kako izgraditi WebAssembly i kako koristiti rezultirajući kôd u Pythonu.

Međutim, ne dopustite da vas opažene performanse spriječe u korištenju Brythona. Na primjer, uvoz Python modula može rezultirati preuzimanjem odgovarajućeg modula s poslužitelja

U pogledu nova verzija, ističe se kompatibilnošću s Pythonom 3.10, uključujući podršku operatora za usklađivanje uzoraka (podudaranje / velika slova).

Nova verzija također opruža početnu implementaciju apstraktnog stabla sintakse (AST, Abstract Syntax Tree) za jezik Python, koji se zatim može koristiti za generiranje JavaScript koda iz univerzalnog AST -a.

Kako bi se implementirao Brython, to se može učiniti dodavanjem sljedećeg koda na web stranicu:

<script type="text/javascript"
src="https://cdn.jsdelivr.net/npm/brython@3.9/brython.min.js">
</script>
<script type="text/javascript"
src="https://cdn.jsdelivr.net/npm/brython@3.9/brython_stdlib.js">
</script> 

O

<script type="text/javascript"
src="https://cdn.jsdelivr.net/npm/brython@3/brython.min.js">
</script>
<script type="text/javascript"
src="https://cdn.jsdelivr.net/npm/brython@3/brython_stdlib.js">
</script>

Ili se može instalirati i na strani poslužitelja pokretanjem sljedeće naredbe:

pip install brython

Konačno ako vas zanima više o tome, možete provjeriti detalje U sljedećem linku. Kôd projekta napisan je na Pythonu i distribuira se pod BSD licencom.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.