Brython, implementacja Pythona 3 do programowania WWW po stronie klienta

Ostatnio ogłoszono wydanie nowej wersji projektu Brython 3.10 (Browser Python), który jest dostarczany z implementacja języka programowania Python 3 do wykonania po stronie przeglądarki internetowej, dzięki czemu możesz używać Pythona zamiast JavaScript do tworzenia skryptów dla sieci.

Łącząc biblioteki brython.js i brython_stdlib.js, programista może użyć Pythona do zdefiniowania logiki witryny po stronie klienta, używając Pythona zamiast JavaScript.

Aby umieścić kod Pythona na stronach, musisz użyć tagu z typem MIME „text/python” pozwala to zarówno na osadzenie kodu na stronie, jak i ładowanie zewnętrznych skryptów ( ). El script proporciona acceso completo a los elementos y eventos DOM.

Oprócz dostępu do standardowej biblioteki Pythona istnieją specjalistyczne biblioteki do interakcji z bibliotekami DOM i JavaScript, takimi jak jQuery, D3, Highcharts i Raphael. Obsługiwane jest użycie frameworków CSS Bootstrap3, LESS i SASS.

Możliwość uruchomienia Pythona w przeglądarce internetowej umożliwia:

  • Uruchom ten sam kod Pythona na serwerze iw przeglądarce.
  • Pracuj z różnymi interfejsami API przeglądarki za pomocą Pythona
  • Manipuluj Document Object Model (DOM) za pomocą Pythona
  • Użyj Pythona do interakcji z istniejącymi bibliotekami JavaScript, takimi jak Vue.js i jQuery
  • Ucz języka Python uczniów Pythona za pomocą edytora Brython
  • Zachowaj poczucie zabawy podczas programowania w Pythonie

Efektem ubocznym używania Pythona w przeglądarce jest utrata wydajności w porównaniu z tym samym kodem w JavaScript.

Wykonywanie kodu Pythona z bloków se realiza mediante la compilación previa de este código przez silnik Brython po załadowaniu strony. Kompilację rozpoczynamy od wywołania funkcji brython(), np. dodając « ».

Na podstawie kodu Pythona, tworzona jest reprezentacja JavaScript, która jest następnie wykonywana przez standardowy silnik JavaScript przeglądarki (Dla porównania, projekt PyPy.js oferuje interpreter CPython skompilowany do asm.js do uruchamiania kodu Pythona w przeglądarce, a Skulpt implementuje interpreter w JavaScript.)

Witryna Brython zauważa, że ​​szybkość realizacji wdrożenia jest porównywalna z CPython. Ale Brython działa w przeglądarce, a odniesieniem w tym środowisku jest JavaScript wbudowany w silnik przeglądarki. W rezultacie spodziewaj się, że Brython będzie wolniejszy niż dobrze dostrojony i ręcznie napisany JavaScript.

Brytyjczyk skompiluj kod Pythona do JavaScript, a następnie uruchom wygenerowany kod. Te kroki mają wpływ na ogólną wydajność, a Brython może nie zawsze spełniać Twoje wymagania dotyczące wydajności. W niektórych przypadkach może być konieczne delegowanie wykonywania kodu do JavaScript lub nawet WebAssembly. Zobaczysz, jak zbudować WebAssembly i jak używać powstałego kodu w Pythonie w sekcji WebAssembly.

Nie pozwól jednak, aby postrzegana wydajność powstrzymała Cię od korzystania z Brythona. Na przykład import modułów Pythona może spowodować pobranie odpowiedniego modułu z serwera

W sprawie nowa wersja wyróżnia się kompatybilnością z Pythonem 3.10, w tym obsługa operatorów do dopasowywania wzorców (dopasowanie / wielkość liter).

Nowa wersja również wyłączonazapewnia wstępną implementację abstrakcyjnego drzewa składni (AST, Abstract Syntax Tree) dla języka Python, które można następnie wykorzystać do wygenerowania kodu JavaScript z uniwersalnego AST.

W celu wdrożenia Brythona można to zrobić, dodając na stronie następujący kod:

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

Lub można go również zainstalować po stronie serwera, uruchamiając następujące polecenie:

pip install brython

W końcu jeśli chcesz dowiedzieć się więcej na ten tematmożesz sprawdzić szczegóły W poniższym linku. Kod projektu jest napisany w Pythonie i jest rozpowszechniany na licencji BSD.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.