Tworzenie stron internetowych to nie tylko jedno. Obejmuje wiele umiejętności i istnieją różne rodzaje kariery w przestrzeni tworzenia stron internetowych. Trzy często używane terminy to "front end", "back end" i "full stack". Oto kluczowe różnice między tymi trzema.
Front-End Web Development
Rozwój front-end , podczas gdy jego komponenty ciągle się zmieniają, zajmuje się głównie zewnętrznymi częściami strony internetowej lub aplikacji internetowej.
Podstawą rozwoju front-end jest HTML, CSS i JavaScript.
- HTML : HyperText Markup Language, czyli HTML, jest kluczowym elementem strukturalnym wszystkich stron internetowych. Bez niego strony internetowe nie mogą istnieć.
- CSS : CSS dodaje styl do HTML. Lubię używać analogii, że HTML jest jak twarz, a CSS jest jak makijaż.
- JavaScript : JavaScript lub JS ewoluował w ciągu ostatnich kilku lat. W odniesieniu do rozwoju front-end, JS jest ważny, ponieważ pomaga uczynić strony internetowe interaktywnymi.
Ogólnie rzecz biorąc, przód jest związany z zasadami projektowania i projektowania. Jednak deweloperzy front-end niekoniecznie są projektantami.
Zasadniczo deweloperzy front-end tworzą wygląd zewnętrzny - strony witryny, które widzą użytkownicy. Oznacza to, że programista zewnętrzny musi brać pod uwagę czytelność i użyteczność witryny i / lub aplikacji.
Co więcej, front end działa na kliencie - co oznacza komputer lokalny użytkownika - w większości przypadków przeglądarkę internetową.
Informacje nie są przechowywane po stronie klienta.
Back-End Web Development
Tworzenie stron internetowych zaplecza jest tym, co dzieje się za kulisami. Tylny koniec umożliwia doświadczenie z przodu.
Aby wszystko było łatwiejsze, pomyśl o przedniej części jako części góry lodowej nad wodą. To, co widzi użytkownik - elegancka strona.
Tylny koniec to reszta lodu; użytkownik końcowy nie może go zobaczyć, ale jest najbardziej podstawowym elementem aplikacji internetowej. Back-end działa na serwerze lub, jak to często się nazywane, "po stronie serwera".
W przeciwieństwie do rozwoju front-end (który głównie wykorzystuje HTML, CSS i JavaScript), tworzenie stron internetowych zaplecza może opierać się na wielu językach i frameworkach.
Kilka popularnych języków używanych na zapleczu to:
- Ruby (często używany w połączeniu ze strukturą Rails - AKA Ruby on Rails)
- Python (często używany z frameworkiem Django na zapleczu)
- PHP (popularny CMS WordPress używa PHP na zapleczu - PHP ma kilka popularnych frameworków, z których jedna to Laravel)
- Node.js (coraz popularniejsze - jest to środowisko zaplecza dla aplikacji internetowych zbudowanych z JavaScript)
Jednak, aby witryny i aplikacje internetowe na dużą skalę działały, jest to coś więcej niż język i środowisko back-end. Wszystkie informacje na stronie internetowej lub aplikacji muszą być gdzieś przechowywane.
To tutaj pojawiają się bazy danych. Również deweloperzy back-endowi to obsługują.
( Uwaga : możesz zbudować stronę internetową bez bazy danych używając tylko HTML i CSS, to byłaby strona statyczna i byłaby znacznie mniej elastyczna, ale strona, która opiera się na dynamicznie generowanych informacjach - Facebook, Yelp, strona e-commerce - potrzebuje bazy danych.)
Popularne bazy danych obejmują:
- MySQL
- PostgreSQL
- MongoDB
- I inni
Zazwyczaj niektóre języki / frameworki zaplecza wymagają określonej bazy danych. Na przykład struktura pełnego stosu MEAN wymaga MongoDB.
Poza znajomością języka / frameworku i uruchamianiem baz danych, deweloperzy zaplecza muszą również rozumieć architekturę serwerów.
Właściwe skonfigurowanie serwera pozwala witrynie działać szybko, bezawaryjnie i nie dać użytkownikom błędów. To wchodzi w domenę programisty back-end, ponieważ większość błędów występuje z tyłu, a nie z przodu.
Pełny stos
Tak, zgadłeś: Pełny stos to połączenie zarówno przodu, jak i tyłu.
Deweloper pełno-stosowy to usługa typu "jack-of-all-trade". Są odpowiedzialni za wszystkie poziomy rozwoju, od konfiguracji serwera do CSS związanych z projektem.
W dzisiejszych czasach jest tak wiele, że idzie do tworzenia stron internetowych, że prawie niemożliwe jest obsłużenie obu stron. Podczas gdy wiele osób może twierdzić, że są pełnymi stworami, lub w rzeczywistości są, zazwyczaj koncentrują się bardziej na jednej stronie: na kliencie lub serwerze. (AKA z przodu lub z tyłu).
W mniejszych firmach / startupach jedna osoba prawdopodobnie byłaby odpowiedzialna za wszystkie strony spektrum rozwoju sieci. Jednak w większych firmach ludzie pracują w zespołach i mają wyspecjalizowane role - jeden koncentruje się wyłącznie na architekturze serwera, innym (lub kilku osobach) na interfejsie itd.
Wniosek
Tworzenie stron internetowych ma wiele twarzy i każdego dnia ewoluuje coraz bardziej. Jest wiele do nauczenia, ale nie czuj się nacisk na to, aby nauczyć się wszystkiego od razu. Pamiętaj, że w środowisku pracy zazwyczaj jesteś w zespole z innymi osobami. Skoncentruj się na doskonaleniu swoich umiejętności w jednym aspekcie tworzenia stron internetowych na raz. Nie daj się przytłoczyć, a będziesz pro, zanim się zorientujesz.