Teoretski, mnogi programski jezici bi mogli da se koriste za back end, ali u praksi najčešće nije tako. Postoje jezici koji su popularni upravo za ovu namjenu:
- PHP
- Python
- Node.js (Javascript)
- Ruby
- Java
Da biste počeli sa većinom ovih jezika trebaće vam neki interpreter, kompajler, ili čak server. Što se tog djela tiče, internet je prepun korisnih materijala.
Istražite koje su razlike među ovim jezicima i koji je pogodan za koju specifičnu namjenu. Ne postoji pravi odgovor ovde, izaberite šta vam najviše odgovara.
Ukoliko vam je dugoročni cilj da radite u nekoj određenoj firmi ili na nekoj određenoj poziciji, to vam može pomoći pri izboru. Pogledajte u oglasima za poslove koje jezike ta kompanija inače koristi i učite njih.
Druga stvar koja bi mogla da utiče na izbor jeste da li poznajete nekog iskusnijeg programera koji bi vas možda mentorisao.
Ukoliko, na primjer, poznajete nekoga ko se bavi PHP-om i bio bi voljan da vam da par savjeta ili čak da vas mentoriše, možda treba da razmislite upravo o PHP-u.
Vrijednost mentora je neprocjenjiva, a ukoliko imate nekoga ko bi vam potencijalno pomogao na ovaj način možda vredi da krenete upravo njegovim stopama – ako već nemate neku jaku preferenciju kada su jezici u pitanju.
Za početak je potrebno da se upoznate sa osnovama samog jezika, sintaksom, i nekim njegovim svojstvenostima.
Za više sadržaja vezanih za neki konkretan jezik ili framework koji vas zanima, moraćete malo da proguglate. Navikavajte se na to.
Takođe, zajednica može da vam pomogne. Grupe poput IT početnici su mjesta na kojima možete da pitate ljude za neki savjet ili neki dobar resurs.
Ako ste se u prvoj fazi upoznali sa javascriptom kako treba, savladali ste osnovne programerske koncepte poput petlji, funkcija, i kontrole toka. Ukoliko to nije slučaj, sada je vrijeme da to uradite.
To je dovoljno da steknete širu sliku, a zatim vas čekaju nedelje i mjeseci detaljnog upoznavanja sa jezikom dok budete radili na svojim projektima.
Većina jezika koji se koriste za web su objektno orijentisani, tako da je važno da savladate osnovne koncepte objektno orijentisanog programiranja u jeziku za koji ste se odlučili. Neki od tih koncepata su:
Kako vam za početak treba samo sintaksa i upoznavanje sa jezikom, youtube tutorijali su sasvim dovoljni. Ako želite da učite PHP i njegov framework Larawel preporučujem vam kurseve Danila Vesovića ili kurs Backend programiranje – MySQL i PHP Campster platforme.
Većina jezika koji se koriste za web su objektno orijentisani, tako da je važno da savladate osnovne koncepte objektno orijentisanog programiranja u jeziku za koji ste se odlučili. Neki od tih koncepata su:
- Objekti
- Klase
- Nasleđivanje
- Interfejsi
- Enkapsulacija
- Polimorfizmi
Ovo je od kritične važnosti i traži se u svim oglasima za backend poslove. Upoznajte sa opštim idejama OOP-a, a zatim i sa njegovom praktičnom primjenom u jeziku koji ste izabrali.
U ovoj fazi je važno da pravite mnogo malih projekata. To će za početak biti programi koji su napisani u jednom fajlu i imaju manje od 100 linija koda, ali su vama u ovom trenutku poučni i korisni. Ovo nisu projekti koje ćete ikome ikada pokazati, tako da nemojte imati neka prevelika očekivanja -samo kucajte, kucajte, kucajte.
Ukoliko imate postavljen sajt na internetu, možete početi da mu dodajete neke back end funkcionalnosti dok učite. Za sada mogu da budu i sasvim jednostavne, ali važno je da prođete kroz proces pisanja koda i zatim diplojovanja istog na server.
Bonus poeni za vas ukoliko želite da se upoznate sa osnovama algoritama i struktura podataka. Ovo u domaćim outsourcing firmama i agencijama nije presudno prilikom dobijanja posla, pogotovo ne prvog.
Ipak, dugoročno će vam se ovo itekako isplatiti, pogotovo ukoliko želite da radite u startapima i drugim kompanijama koje razvijaju softverske proizvode.
Kada savladate osnove jednog programskog jezika i koncepte objektno orijentisanog programiranja, smatrajte da ste spremni za sledeću fazu.