Online kursevi
Pitanja i testovi
O nama
Podrška
10 avg

Web programiranje – Frontend i Backend

Web programiranje obuhvata sve što se krije iza izgleda i funkcionalnosti modernih sajtova i web aplikacija. U ovom tekstu razjasnićemo razliku između frontend i backend programiranja — šta korisnik vidi, a šta se dešava „iza kulisa“. Objasnićemo koje tehnologije se koriste u oba segmenta, kakve veštine su potrebne za ove oblasti, kako izgledaju karijere frontend i backend programera i da li je moguće spojiti oba sveta kao full-stack developer. Ako razmišljaš da zakoračiš u IT, ovaj tekst ti može pomoći da odlučiš kojim putem da kreneš.

programeri

 

Ako razmatrate karijeru u web programiranju, sigurno ste naišli na izraze kao što su frontend i backend. Na prvi pogled, ovi pojmovi mogu delovati zbunjujuće, posebno ako tek ulazite u svet programiranja. Šta tačno znače i čime se zapravo bave frontend i backend programeri?

Iako se bave različitim aspektima razvoja, frontend i backend su nerazdvojni deo istog procesa – kao dve strane jednog novčića. Frontend se odnosi na ono što korisnik vidi i s čim direktno komunicira, dok je backend zadužen za sve što se dešava u pozadini, na serverskoj strani. Da bi jedna web stranica bila funkcionalna, oba dela moraju da rade zajedno, sinhronizovano i efikasno.

U nastavku teksta razjasnićemo uloge, tehnologije i veštine koje čine ova dva sveta web razvoja – i pomoći vam da otkrijete koji vam je možda bliži.

Frontend development

Frontend na web stranici je ono što vidite i koristite na vašem browser-u. Može se nazvati i „Stranicom za klijente“, jer uključuje sve ono što posetilac sajta može da vidi, od teksta i boja, do dugmadi, slika i navigacionih menija.

Recimo, na primer, da želite da započnete novi biznis, koji se bavi prodajom određenih proizvoda. Potreban vam je profesionalan web sajt, kako biste predstavili svoju kompaniju potencijalnim klijentima, naveli informacije o firmi,  adresu na kojoj se nalazite, možda postavili i nekoliko fotografija. Sve što vam je potrebno, jeste znanje frontenda, da biste napravili web sajt.

Programski jezici koji se koriste za Frontend

HTML – osnovni markup jezik koji kreira i organizuje sadržaj koji će biti prikazan na internetu.

CSS – jezik koji prati HTML, određuje stil web sajta, izgled, boje, fontove I sl.

JavaScript – programski jezik koji se koristi kada želite da napravite interaktivne elemente, poput padajućih menija, kontakt formu itd.

Zajedno, ova tri nezaobilazna jezika stvaraju sve što je vizuelno predstavljeno kada posetite web sajt- bilo da je to online prodavnica, portal sa vestima, email, ili Google pretraživanje.

Pored ova tri osnovna jezika, koristićete  framework-e kao što su Bootstrap i Angular, biblioteke JavaScript-a poput JQuery i dodataka za CSS poput Sass i LESS. Veliki je broj sadržaja poput ovih, koji podržavaju HTML, CSS i JavaScript. Njihova svrha je da sam kod bude bolje organizovan i jednostavniji za uređivanje, pružajući nam širok izbor različitih alata i templates-a (šablona), koji su kompatibilni sa programskim jezicima.

Frontend development i Web dizajn

Važno je napomenuti da, iako se Frontend bavi vidljivom i interaktivnom stranom web sajta, to ne znači da se bavi web dizajnom.

Frontend developer na osmišljava izgled i ne dizajniraju web sajt, to je posao dizajnera, ili, konkretnije UI dizajnera. Frontend developer preuzima ovaj dizajn i na osnovu njega kreira (kodira) websajt, koristeći gore pomenute programske jezike.

Dakle Web dizajner se bavi izgledom samog sajta, a Frontend developer se bavi time da tu zamisao pretvori u funkcionalan web sajt.

Backend programiranje

Vratimo se vašoj kompaniji, za koju ste napravili web sajt sa osnovnim informacijama. Posao se proširio i želeli biste da vaše proizvode prodajete online. Odlučujete se da nadogradite vaš web sajt i otvarate online prodavnicu, u kojoj ljudi mogu naručivati i kupovati proizvode. To znači da sada vaš web sajt mora imati podatke o svim proizvodima, kupovinama, profilima korisnika, kreditnim karticama itd. Kako možete organizovati sve ove podatke i informacije? Tu stupa na scenu backend programiranje.

Ono što ste do sada imali je primer statične web stranice – njen sadržaj se zapravo ne menja mnogo. Kod statičnih web sajtova, sve potrebne informacije koje određuju šta se nalazi na web stranici nalaze se u samom frontend kodu.

Statični web sajtovi su dobri za prikazivanje preduzeća, restorana, portfolija itd., ali ukoliko želite da pretvorite web sajt u interaktivan sa korisnicima, moraćete da imate detaljniji uvid u ono što se dešava iza kulisa web sajta.

Backend (pozadinska strana) deo je web sajta koji nije vidljiv posetiocima sajta. Odgovoran je za skladištenje, čuvanje i organizovanje podataka i osiguravanju da sve na strani korisnika funkcioniše. Backend komunicira sa frontend-om, tako što šalje i prima podatke koje se prikazuju na web sajtu. Kada popunjavate kontakt formu, upišete web adresu, ili kupujete online, vaš browser šalje zahtev backend-u , koji se vraća kao informacija u obliku frontend koda koji browser može da prikaže.

Vaš web sajt sada ima nove, backend komponente, kako bi postao dinamičan web sajt, čiji sadržaj se može menjati u zavisnosti od toga šta se nalazi u bazi podataka. U tome se razlikuje u odnosu na statičan web sajt, koji ne zahteva bazu podataka, jer njen sadržaj ostaje isti.

Postavljanje i upravljanje backend-om

Vašoj web stranici je sada potrebna baza podataka za upravljanje svim informacijama o proizvodima i kupcima. Baza podataka čuva sadržaj sa web sajta na način koji olakšava vraćanje, organizovanje, uređivanje i čuvanje podataka. Pokreće se na udaljenom računaru – serveru. Postoji mnogo različitih baza podataka koje su u širokoj upotrebi, kao što su MySQL, SQL Server, PostgresSQL i Oracle.

Vaš web sajt i dalje ima frontend kod, ali, takođe, mora biti napravljen tako da može da koristi programski jezik koje baza podataka može da prepozna. Uobičajeni programski jezici koji se koriste su Ruby, PHP, Java, .Net i Python. Ti programski jezici rade sa framework-om koji olakšava proces web programiranja – za Javu je to Spring, za PHP Laravel itd.

Kada sve te komponente udruženo pravilno rade, korisnici mogu na vašem web sajtu vršiti pretragu prema raznim kategorijama. Kada se u polje za pretragu (na frontend-u) ukuca određena reč, aplikacija pretražuje sve proizvode u bazi podataka (na backend- u) i vraća informaciju u obliku frontend koda koji prikazuje listu proizvoda sa zadatom reči iz pretrage.

Sada imate dinamičan web sajt koji koristi frontend i backend tehnologije. Koristite frontend programske jezike kako biste učinili da vaš sajt izgleda dobro i jednostavan za navigaciju. Iza kulisa, backend drži sve frontend komponente i omogućava da se, na primer, sačuva istorija kupovina korisnika i detalji proizvoda, kreira sigurne naloge korisnika itd.

Kao što vidite, obe strane imaju različite uloge, ali radeći udruženo određuju iskustvo korisnika i omogućavaju da web stranica funkcioniše.

 

programeri u kancelariji

Frontend ili Backend – koji bi trebalo da naučite?

Ukoliko želite da naučite web programiranje, a niste sigurni da li da se odlučite za frontend ili backend, važno je razmotriti svakodnevne zadatke svakoga ponaosob. Ako vam se dopada vizuelni dizajn, da pretvarate ideje dizajnera u delo, stvarajući vrhunsko zadovoljstvo korisnika, verovatno biste uživali radeći frontend programiranje.

Ako vam se, ipak, sviđa rad sa podacima, algoritmima i pronalaženju načina za optimizacijom složenih sistema, onda bi vam se dopalo backend programiranje.

Međutim, razdvajanje frontend-a i backend-a ne mora da bude uvek tako isključivo. Pojedini programeri su iskusni u oba, i frontend i backend programiranju. Ovi programeri su poznati kao Full stack developeri.

 

Podeli

cubes facebook icon cubes twitter icon cubes linkedin icon