Brython, una implementazione Python 3 per a prugrammazione web di u cliente

Ricentimenti a publicazione di a nova versione di u prugettu Brython 3.10 hè stata annunziata (Navigatore Python) chì vene cù u implementazione di u linguaghju di prugrammazione Python 3 per esecutà da u latu di u navigatore web, chì vi permette di aduprà Python invece di JavaScript per sviluppà script per u web.

Cunnessendu e biblioteche brython.js è brython_stdlib.js, un sviluppatore web pò aduprà Python per definisce a logica di u situ di u latu di u cliente, aduprendu Python invece di JavaScript.

Per inserisce u codice Python in e pagine, duvete aduprà u tag cù u tipu mime "text / python", questu permette à tempu d'incorporà codice in a pagina è di carregà script esterni ( ). El script proporciona acceso completo a los elementos y eventos DOM.

Oltre à accede à a biblioteca standard di Python, ci sò biblioteche specializate per interagisce cù e biblioteche DOM è JavaScript cum'è jQuery, D3, Highcharts è Raphael. L'utilizazione di frameworks CSS Bootstrap3, LESS è SASS hè supportata.

Esse capace di lancià Python in un navigatore web permette:

  • Executà u listessu codice Python nantu à u servitore è u navigatore.
  • U travagliu cù diverse API di navigatore cù Python
  • Manipulate u Document Object Model (DOM) cù Python
  • Aduprate Python per interagisce cù e biblioteche JavaScript esistenti cum'è Vue.js è jQuery
  • Insegna a lingua Python à Studenti Python cù l'editore Brython
  • Mantene un sensu di divertimentu mentre programate in Python

Un effettu secundariu di l'usu di Python in u navigatore hè una perdita di prestazione paragunatu à u listessu codice in JavaScript.

Esecuzione di u Codice Python da Blocks se realiza mediante la compilación previa de este código da u mutore Brython dopu chì a pagina hè stata caricata. A compilazione hè iniziata chjamendu a funzione brython (), per esempiu aghjustendu « ».

Basatu nantu à u codice Python, hè furmata una rapprisintazione JavaScript, chì hè dopu eseguita da u mutore JavaScript standard di u navigatore (Per u paragone, u prugettu PyPy.js offre un interpretu CPython compilatu in asm.js per eseguisce u codice Python in u navigatore, è Skulpt implementa l'interprete in JavaScript.)

U situ di Brython nota chì a velocità di esecuzione di l'implementazione hè paragunabile à CPython. Ma Brython corre in u navigatore è a riferenza in questu ambiente hè JavaScript integrata in u mutore di navigatore. Di conseguenza, aspettate chì Brython sia più lento di JavaScript ben sintonizatu è scrittu à a manu.

Brython compilate u codice python in javascript è poi eseguite u codice generatu. Questi passi anu un impattu nantu à e prestazioni generali è Brython pò micca sempre soddisfà i vostri requisiti di prestazione. In certi casi, pudete avè bisognu di delegà l'esecuzione di codice à JavaScript o ancu WebAssembly. Puderete vede cumu custruisce WebAssembly è cumu aduprà u codice resultante in Python in a sezione nantu à WebAssembly.

Tuttavia, ùn lasciate micca chì e prestazioni percepite vi impediscenu di aduprà Brython. Per esempiu, l'importazione di moduli Python pò dà u scaricamentu di u modulu currispondente da u servitore

In quantu a nova versione, si distingue per a so cumpatibilità cù Python 3.10, Inclusu u supportu di l'operatore per a corrispondenza di mudelli (match / case).

A nova versione dinò ofurnisce una implementazione iniziale di un arburu sintatticu astrattu (AST, Abstract Syntax Tree) per a lingua Python, chì pò esse aduprata per generà codice JavaScript da un AST universale.

Per implementà Brython pò esse fattu aghjunghjendu u codice chì seguita nantu à u situ:

<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>

O pò ancu esse installatu nantu à u latu di u servitore eseguendu u cumandimu seguitu:

pip install brython

Finalmente sè site interessatu à sapè ne di più, pudete verificà i dettagli In u ligame seguente. U codice di u prugettu hè scrittu in Python è hè distribuitu sottu a licenza BSD.


U cuntenutu di l'articulu aderisce à i nostri principii di etica edituriale. Per signalà un errore cliccate quì.

Sianu the first to comment

Lasciate u vostru cummentariu

U vostru indirizzu email ùn esse publicatu. campi, nicissarii sò marcati cù *

*

*

  1. Responsabile di i dati: Miguel Ángel Gatón
  2. Scopu di i dati: Cuntrolla SPAM, gestione di cumenti.
  3. Legitimazione: U vostru accunsentu
  4. Cumunicazione di i dati: I dati ùn seranu micca cumunicati à terzi, eccettu per obbligazione legale.
  5. Archiviazione di dati: Base di dati ospitata da Occentus Networks (UE)
  6. Diritti: In ogni mumentu pudete limità, recuperà è cancellà e vostre informazioni.