Kada uče kodirati, početnici se često susreću s dva pojma: frontend i backend. Puno puta se pitaju što izabrati i koje su glavne razlike. U nastavku ćemo predstaviti glavne razlike između njih: opis zanimanja, vještine koje su potrebne te koje programske jezike i alate koriste u svom radu.
Što radi frontend programer?
Frontend programer ima kao glavnu odgovornost: osigurati da posjetitelji web stranice mogu lako komunicirati sa stranicom. Oni to čine kombinacijom dizajna, tehnologije i programiranja za kodiranje izgleda web stranice, kao i brigu o otklanjanju pogrešaka. Kad god posjetite web-mjesto, sve što vidite, kliknete ili na neki drugi način koristite djelo je frontend programera.
Iako postoje neke varijacije među tvrtkama, općenito možete očekivati da će uloga frontend programera uključivati nešto ili sve od sljedećeg:
- Optimiziranje korisničkog iskustva.
- Korištenje HTML-a, JavaScript-a i CSS-a za oživljavanje koncepata.
- Razvoj i održavanje korisničkog sučelja.
- Implementacija dizajna na mobilnim web stranicama.
- Izrada alata koji poboljšavaju interakciju web-mjesta.
- Ispravljanje grešaka i testiranje upotrebljivosti.
Programski jezici koje koriste frontend programeri:
Većina frontend programera najviše vremena rade u programskim jezicima poput HTML-a, CSS-a i JavaScript-a. Frontend programeri koriste HTML za postavljanje opće strukture i sadržaja dokumenta, CSS za oblikovanje i JavaScript za situacije koje zahtijevaju naprednu interaktivnost. Osim toga, mogu koristiti AJAX (kombinaciju JavaScripta i XML-a) za ažuriranje određenih područja web-mjesta bez potrebe za osvježavanjem cijele stranice. Frontend programeri također često koriste tzv. „knjižnice“ izgrađene na ovim programskim jezicima kao što su AngularJS, jQuery i React; i okvire za dizajn uključujući Foundation i Bootstrap Dodatni jezici za razvoj frontenda, iako su rjeđi, također se mogu koristiti. Među najpopularnijima su Python, Ruby ili PHP.
Uobičajeni alati koji se koriste u frontend-u:
Budući da frontend programeri koriste kombinaciju dizajna i web razvoja u svom radu, alati koje koriste obuhvaćaju sva područja u fokusu.
Alati za grafički dizajn
Prije nego što frontend programer počne kodirati, obično koriste alate za grafički dizajn za izradu prototipa svoje web stranice, što im omogućuje testiranje i eksperimentiranje s korisničkim sučeljem prije nego što razrade stvarni kod. Ovisno o veličini tima i opsegu projekta, proces može biti jednostavan kao korištenje olovke i papira ili može zahtijevati programe za uređivanje grafike kao što su Sketch ili Photoshop, alate za izradu prototipa poput Balsmiq Mockups ili naprednije alate za grafičko uređivanje kao što su Figma ili Ilustrator.
Alati za uređivanje koda
Alat za uređivanje koda jednostavno je program koji programer odluči koristiti za pisanje koda za web stranicu. Neki programeri radije koriste lagani uređivač kao što je Notepad, dok se drugi odlučuju za nešto bogatije značajkama kao što je Visual Studio ili Eclipse.
Što radi backend programer?
Backend programer pokreće web-mjesto – korisnik ga ne vidi niti komunicira s njim, ali uvijek radi u pozadini, pružajući funkcionalnost i iskustvo nalik radnoj površini. Backend programeri igraju ključnu ulogu u timovima za razvoj weba i osiguravaju isporuku podataka ili usluga koje zahtijeva prednji sustav ili softver. Backend je kombinacija baze podataka i softvera na web poslužiteljima, poslužiteljima u oblaku ili na hibridu oba.
Odgovornosti backend programera mogu uključivati :
- Kreiranje baze podataka, integracija i upravljanje
- Backend okviri za izgradnju softvera na strani poslužitelja
- Tehnologije web poslužitelja
- Integracija računalstva u oblaku
- Operativni sustavi
- Razvoj, implementacija i održavanje sustava za upravljanje sadržajem
- API integracija
Programski jezici koje koriste backend programeri:
Kako bi poslužitelj, aplikacija i baza podataka međusobno komunicirali, pozadinski programeri koriste jezike kao što su PHP, Ruby, Python, Java i .Net za izradu aplikacije i alate poput MySQL, Oracle i SQL Server za pronaći, spremiti ili promijeniti podatke i poslužiti ih korisniku u prednjem kodu. Nakon komunikacije s vlasnikom tvrtke i razumijevanja njihovih potreba i tehničkih zahtjeva, backend programeri koriste prethodno spomenute alate za izradu web aplikacija s čistim, dobro dokumentiranim kodom.
Uobičajeni alati koji se koriste u backend-u:
- Laravel je jedan od najpopularnijih PHP okvira i lako je vidjeti zašto. Pruža jednostavnu, čitljivu sintaksu za PHP programere. Njegovo službeno integrirano razvojno okruženje (IDE), Homestead, ne zahtijeva da instalirate web poslužitelj na vašem lokalnom računalu. Izvrstan je za izgradnju sigurnih web-mjesta jer stvara šifrirane lozinke koje se ne spremaju u običnom tekstu.
- Stack Overflow je tu da vam pomogne kada naiđete na pitanja i nedoumice. On je glavno mjesto za pitanja i odgovore za programere. Bez obzira na vrstu problema s kojim se suočavate, netko u zajednici Stack Overflow ima odgovor za vas duša.
- Jira je platforma za upravljanje projektima koja koristi kanban i scrum radne tijekove za upravljanje projektima. Pomaže pri jednostavnom planiranju, praćenju i izvještavanju o radu za razvoj agilnih projekata.
- GitHub je biblioteka znanja o kodiranju. Ovaj web-bazirani alat omogućuje dijeljenje i pohranjivanje koda, doprinos projektima otvorenog koda i praćenje revizija. Možete ga koristiti za kontrolu verzija vlastitog projekta ili ga možete koristiti za izgradnju svog profila kao programer doprinoseći projektima drugih. Pruža zajednicu programerima za dijeljenje znanja i suradnju.
- Spring, model programiranja i konfiguracije za izgradnju modernih poslovnih aplikacija temeljenih na Javi.
- Django, moćni Python web okvir za stvaranje RESTful web usluga. Smanjuje količinu trivijalnog koda, što pojednostavljuje izradu web aplikacija i rezultira bržim razvojem.
- Flask, okvir za izgradnju web poslužitelja u Pythonu. To je mikro okvir, što znači da nije cjeloviti okvir za razvoj web aplikacija. Daje programerima osnove za pokretanje web poslužitelja.
- Ruby on Rails, jedna od najstarijih backend tehnologija. Određeni postotak ljudi još uvijek radije koristi ruby on rails za svoj pozadinski kod. Radi se o fleksibilnom okviru, prilagođenom IDE-u s jednostavnim funkcijama i manipulacijama te podrškom ruby jezika.
Zaključak
Ukoliko želite naučiti web programiranje, a niste sigurni želite li se odlučiti za frontend ili backend, važno je razmotriti ranije navedene opise zanimanja i alate koje koriste u svojim poslovnim procesima. Možemo reći da su frontend i backend programiranje dvije strane istog novčića. Rade zajedno da ispune zahtjeve klijenta i zadovolje potrebe tvrtke.