Python JavaScript Brython FrontEnd Web
Co kdyby šel JavaScript nahradit Pythonem a ten pak používat pro vývoj FrontEndu?
Přesně to je cílem projektu Brython, kterým jeho tvůrci chtějí nahradil Javascript a místo něho používat Python jako skriptovací jazyk pro web.
A navíc si můžete spustit Python rovnou v prohlížeči, bez stahování souborů a instalace.
Výhody Pythonu v prohlížeči
I když je JavaScript ten jazyk pro vývoj front-endových webových aplikací, může mít pro vás použití Pythonu následující výhody:
- Chcete využít znalosti Pythonu, které máte.
- Chcete používat API prohlížeče pomocí Pythonu.
- Chcete manipulovat s objektovým modelem dokumentu (DOM) pomocí Pythonu.
- Nechcete se učit JavaScript.
- Nelíbí se vám syntaxe JavaScriptu.
- Chcete používat Python s existujícími JavaScriptovými knihovnami.
Existuje mnoho vývojářů, kteří by pro vývoj frontendu dalo přednost Pythonu před JavaScriptem.
Nevýhody
Použití Brythonu má samozřejmě také nevýhody.
Python v prohlížeči není tak rychlý, jako nativní JavaScript. Záleží na vaši situaci, jestli je to pro vás překážkou anebo není.
Brython rozhodně není tak rozšířený jako JavaScript. Neexistuje pro něj žádný framework, což může být překážka pro některé vývojáře, zmlsané bohatým JavaScriptovým ekosystémem.
S tím souvisí i nedostatek výukových materiálů pro vývoj FrontEndu v Brythonu. Zde opět vítězí JavaScript, kde si můžete vybrat z široké nabídky zdrojů.
Jak začít s Brythonem
Nejjednodušším způsobem, jak si vyzkoušet Brython je pomocí jeho on-line editoru.
Zkopírujte následující kód a vložte ho do levého okna. V pravém okně potom klikněte na tlačítko run
a kód se spustí.
nazev = 'LovelyData'
print(f"{nazev} se skládá z:\n")
for i, p in enumerate(nazev):
print(f"{i+1}. {p}")
Měli byste dostat tento výsledek:
Python místo JavaScriptu
Pokud si chcete vyzkoušet použití Brythonu jako skriptovacího jazyka pro FrontEnd a použít ho přímo uvnitř webové stránky, aniž byste museli cokoli instalovat, stačí:
1) Zahrnout skripty z CDN.
2) Spustit funkci brython() při načtení stránky <body onload=brython()>
.
3) Napsat Python dovnitř značek <script type="text/python">
.
Výše uvedený příklad se dá do Brythonu přepsat takto:
from browser import document
nazev = 'LovelyData'
document['vystup'] <= (f'{nazev} se skládá z:\n')
for i, p in enumerate(nazev):
document['vystup'] <= (f"{i+1}. {p}\n")
Měli byste dostat tento výsledek:
Kompletní HTML soubor použitý v příkladu, si můžete stáhnout zde.
Jak Brython funguje
Brython nedělá nic jiného, než že přeloží Pythonovský kód do JavaScriptu. Díky tomu funguje ve všech moderních prohlížečích a to dokonce i na chytrých telefonech.
Tvůrci přiznávají, že lepší výkon můžete čekat na Firefoxu než na Chrome, ale záleží samozřejmě na individuální situaci.
Konec JavaScriptu?
Stane se Python tím jazykem pro vývoj front-endových webových aplikací a nahradí JavaScript?
Vzhledem k popularitě JavaScriptu a jeho naprosté dominanci se to pravděpodobně nestane. Rozhodně ne v blízké době.
To ale neznamená, že projekty typu Brython nemají smysl. Vždy je dobré, když ke stávajícím monopolům existují alternativy. 😉