Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Sahasrar
Člen
Avatar
Sahasrar:5.8.2020 21:02

Chcem sa presunúť z klasického programovania PHP, HTML, JS na programovanie pomocou frameworku... Jednomu ale nerozumiem... vo všeobecnosti je PHP serverový jazyk a JS jazyk spustany prehliadacom. Teda funguje to rovnako aj pri použití frameworkov? Napríklad, keď niečo vytvorím v Angulari alebo Reacte tak sa mi daný projekt zo serveru najprv stiahne do prehiadača a následne je spustený?
Pýtam sa preto lebo generovať grafiku a HTML vieme ako prostrednícvom PHP tak JS avšak prečo potom vývojári robia celé stránky v JS frameworkoch, keď tá výsledná podoba stránky je vygenerovaná až v prehliadači a nie ešte na serveri?

Editováno 5.8.2020 21:03
 
Odpovědět
5.8.2020 21:02
Avatar
Jiří Havelka:5.8.2020 22:02

Je potřeba se problém podívat trochu z historického hlediska a z hlediska potřeb a pohodlí uživatele internetu. Původně exestvalo žádé php ani js. člověk prostě zadal do adresního řádku url a webový server mu vrátil pokaždé stejný html soubor. Později vznikla potřeba vrátit pro jednu url různý obsah. Tedy bylo nutné vymyslet nástroj, který podle zadaných pravidel poskladá na serveru html soubor a pošle ho celý uživateli do prohlížeče. Nástroj, který toto umožňuje je například php. Poskládání celého php souboru na serveru má ale několik zásadních nevýhod. Předně kvůli každé změně html souboru musí prohlížeč poslet dotaz přes síť a čekat na odpověď (dokonce i v případě, kdy změna na stránce nevyžaduje data uložená na serveru). Dále pokaždé musí být poslán celý soubor, i když se změna týká jediného elementu. Aby se tyto nevýhody odstranily je potřeba použít nějaký programovací jazyk, který provede nějakou operaci přímo v prohlížeči. Tímto jazykem je javascript. Bez javascriptu by nebylo možné provádět napříkad následující věci:
Po klinutí na tlačítku automaticky označit t všchny checkboxy na stránce.
Načíst donačíst pouze jeden post na facebooku, když se dostanu na konec stránky
Vyvořit našeptávač, který při psaní dotazu ve vyhledávači nabízí možnosti.
A spoutu dlaších věcí, které jsou na moderním webu běžné.
Někdy je takových úkolů, které jsou pro js vhodné nebo jsou bez js nemožné tolik, že se vývojáři projektu rozhodnou negenerovat html soubor na serveru, ale pouze se serveru ptát na data (typicky pomocí REST API) a výslednou stránku z dat vytvořit až v prohlížeči (pomocí manipulace s DOM), k tomu právě slouží js frameworky jako angular, react, nebo vue. Tento přístup vede k tomu, že projek se často programuje ve dvou různých programovacích jazycích (často php a javascript), proto vznikla technologie nodejs, která umižňuje spouštět javascript na serveru, takže může být celý projek napsán v jednom jazyce. Pro dopnění aplikace v angualru nebo reactu funguje tipicky tak, že se z webserveru stahne statická html stránka spolu s js a css. Javscript se pak pomocí AJAXU doptává na dlaší data podle toho upravuje DOM stránky.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
5.8.2020 22:02
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.