Frontend VS Backend


ZE SVĚTA HR 

Be a better IT recruiter:

FRONTEND VS. BACKEND

7. dubna 2021 

Frontend a backend. Pojmy, se kterými se v IT světě setkáváme dennodenně, ale pro mnoho lidí mohou představovat španělskou vesnici. 


Pro programátory je rozdíl mezi backendem a frontendem jako pro stavitele vozidel rozdíl mezi motorem a palubní deskou. Oba mají pro funkčnost celého systému zásadní, ale odlišnou funkci, a zároveň jsou k sobě svázány tak, že ani jeden by bez druhého nefungoval.


FRONTEND, tedy “předek” nebo “přední konec”, je ta část webu, kterou vidí jeho běžný návštěvník a interaguje s ní. Katalog zboží, nákupní košík, objednávkový formulář - to vše tvoří frontend, jenž má na starosti jeden či více developerů - “frontend developerů”. Jako takový bývá frontend typicky daleko lépe propracován než backend a zaměřen na přístupnost, použitelnost a vzhled webové stránky. 


Jeho nejčastějšími programátorskými jazyky jsou HTML, CSS nebo JavaScript - technicky tedy takové, které fungují na klientovi, kterým jeho prohlížeč rozumí. 


BACKEND, tedy, tušíte správně, “zadek” nebo “zadní konec”, slouží naopak k administraci, správě vnitřního chování nějaké aplikace. Jinými slovy, backend vývojáři určují a ovlivňují obsah, který pak frontend zobrazuje. Narozdíl od frontendu běží backend nikoliv u klienta v prohlížeči, ale na serveru, často několik stovek kilometrů vzdáleném od místa, kde je daná aplikace používána. Než jako klient cokoliv na webu použijete či zobrazíte, server luští jazyk, ve kterém je aplikace napsaná, a urputně pracuje na tom, aby vše fungovalo - hledá vás v databázi dle přihlašovacích údajů, tahá novinky za poslední dny na vaši zeď, zpracovává veškeré informace, a pak je pošle k vám ve formě, které jsou frontend technologie schopny interpretovat do obrazu ve vašem prohlížeči.


Backend využívá programovací jazyky jako je Ruby, Python, Java, C, PHP nebo .NET. Zároveň zahrnuje práci s databázemi (Postgres, MySQL, Oracle, MongoDB), webovými servery (nginx, Apache) a operačními systémy (Ubuntu, CentOS, FreeBSD ad.).


Backend developer naprogramuje, co bude aplikace dělat; připraví, zařídí, aby vše na serveru fungovalo tak, jak mělo, a uživatel následně pomocí frontendu dostal celý výsledek jako jednu stránku. Jak si můžeme domyslet, pro backend developera tak bude příznačnější práce s algoritmy a databází, než HTML nebo kaskádové styly, které jsou výsadou frontendu.



PS:

Při dělení na frontend a backend se mějte na pozoru, protože v IT se nyní často můžeme setkat i s pojmem FULLSTACK, jenž už vlastním označením dává znát, že fullstack vývojář bude v IT světě obojetníkem schopným pracovat s určitými technologiemi jak na straně backendu, tak frontendu současně. Kromě HTML a/nebo CSS tak fullstack developer typicky zvládá i naprogramovat prohlížeč (například s využitím JavaScriptu nebo jQuery), naprogramovat server (PHP, Python, Node apod.) a/nebo naprogramovat databázi (SQL, MondgoDB apod.). Lucky him (or her)!