Vývoj webu není jen jedna věc. Zahrnuje několik dovedností a v rámci webového vývojového prostoru existují různé druhy kariéry. Tři často používané výrazy jsou "front end", "back end" a "full stack". Zde jsou klíčové rozdíly mezi těmito třemi.
Rozvoj webových stránek na frontě
Vývoj front-end , zatímco jeho komponenty se stále mění, se zabývá v podstatě vnějšími částmi webové stránky nebo webové aplikace.
Ve svém jádru zahrnuje vývoj přední strany HTML, CSS a JavaScript.
- HTML : HyperText Markup Language nebo HTML je klíčová strukturální složka všech internetových stránek. Bez něj webové stránky nemohou existovat.
- CSS : CSS přidává styl HTML. Líbí se mi analogie, že HTML je jako tvář a CSS je jako make-up.
- JavaScript : JavaScript nebo JS se během posledních několika let vyvíjí. Ve vztahu k vývoji front-end je JS důležitý, protože pomáhá vytvářet interaktivní stránky.
Obecně platí, že přední strana je spojena s principy rozvržení a návrhu. Přední vývojáři však nemusí být návrháři.
V podstatě vývojáři front-end vytvářejí vnější vzhled - stránky webových stránek, které uživatelé vidí. To znamená, že vývojář na frontě musí vzít v úvahu čitelnost a použitelnost místa a / nebo aplikace.
Navíc frontend běží na klientovi - tedy místním počítači uživatele - ve většině případů webový prohlížeč.
A informace nejsou uloženy na straně klienta.
Vývoj webových aplikací
Back-end vývoj webu je to, co se děje v zákulisí. Zadní konec umožňuje zážitek z přední strany.
Chcete-li věci ulehčit, přemýšlejte o předním konci jako o části ledovce nad vodou. To je to, co uživatel vidí - elegantní vyhlížející místo.
Zadní konec je zbytek ledu; nemůže být vidět koncový uživatel, ale je to nejdůležitější prvek webové aplikace. Zadní konec běží na serveru nebo, jak se často nazývá "server side".
Na rozdíl od vývoje front-end (který využívá především HTML, CSS a JavaScript), vývoj webových aplikací na pozadí může záviset na řadě jazyků a rámců.
Několik populárních jazyků používaných na zadní straně patří:
- Ruby (často používaný ve spojení s rámem Rails - AKA Ruby on Rails)
- Python (který se často používá s rámem Django na zadní straně)
- PHP (oblíbená WordPress CMS používá PHP na svém pozadí - PHP má několik populárních rámců, z nichž jeden je Laravel)
- Node.js (stále populárnější - to je back-end prostředí pro webové aplikace postavené s JavaScriptem)
Aby mohly webové stránky a webové aplikace pracovat v rozsáhlém měřítku, je to však více než jen jazyk a rámec. Veškeré informace na webové stránce nebo aplikaci musí být uloženy někde.
To je místo, kde se nacházejí databázové systémy.
( Poznámka : můžete vytvořit web bez databáze pomocí HTML a CSS, což by bylo statické místo a bylo by mnohem méně flexibilní. Avšak stránky, které se spoléhají na informace, které mají být dynamicky generovány - Facebook, Yelp, e-commerce site - potřebuje databázi.)
Mezi oblíbené databáze patří:
- MySQL
- PostgreSQL
- MongoDB
- A další
Obvykle určité jazyky / rámce typu back-end vyžadují určitou databázi. Například rámec MEAN full stack vyžaduje MongoDB.
Vedle znalostí jazyka / rámce a spuštěných databází musí mít vývojáři na pozadí také pochopení architektury serveru.
Nastavení serveru správně umožňuje, aby se web spustil rychle, nehodil a neposkytoval uživatelům chyby. To spadá pod doménu developera, protože většina chyb se vyskytuje na zadním konci, nikoli na frontě.
Plný zásobník
Ano, odhadli jste to: Kompletní zásobník je kombinace předního i zadního konce.
Vývojář s plným stackem je výkopem všech obchodů. Jsou zodpovědní za všechny úrovně vývoje, od toho, jak je server nastaven na návrh CSS.
V dnešních dnech existuje tolik, že jde do rozvoje webu, že je téměř nemožné zvládnout obě strany. Zatímco mnoho lidí může tvrdit, že jsou plné stack, nebo ve skutečnosti jsou, stále se obvykle zaměřují více na jednu stranu: klient nebo server. (AKA přední nebo zadní konec.)
U menších společností / startupů by jedna osoba pravděpodobně odpovídala za všechny strany spektra vývojového softwaru. Ve větších společnostech však lidé pracují na týmy a mají specializované role - jeden se zaměřuje výhradně na serverovou architekturu, jiný (nebo několik lidí) na frontě atd.
Závěr
Vývoj webu má mnoho tváří a každý den se vyvíjí více. Je toho hodně, co se učí, ale necítí se nucen se naučit vše najednou. Nezapomeňte, že v prostředí pracoviště jste obvykle v týmu s ostatními. Zaměřte se na honování svých dovedností v jednom aspektu vývoje webových stránek najednou. Nebuďte ohromeni a vy budete profesionální, než to budete vědět.