Informacije o kursu

Nivo:

Osnovi-Srednji

Početak:

25. septembar

Trajanje:

2 mjeseca

Broj polaznika:

15

Prijave do:

20. septembra

Predavač:

Stevan Čakić

Cijena:

Završen

Web programiranje (v4)

Preuzmitet plan i program kursa

Plan i program

Pročitati pojašnjenja i napomene na samom kraju teksa.

U okviru prvog dijela kursa upoznaćete se sa pisanjem HTML koda, stilskim jezikom CSS kojim se definiše izgled HTML stranica, kao i programiranjem u JavaScript-u (od osnovnih do naprednih stvari).

Kandidati koji uspješno završe prvi dio kursa, biraće u kom smjeru će se dalje usavršivati:

  • Razvoj interfejsa web i mobilnig aplikacija (React i React Native)
  • Obrada podataka (NodeJS, baze podataka)

Po završeku osnovnih i naprednijih obuka, kandidati će biti raspoređeni u više timova. Svaki tim će dobiti priliku da radi na realnom projektu i rok od mjesec dana, a da uz pomoć mentora isti realizuje. Po završetku obuke i rada na projektima, najbolji kandidati (bar dva) će ostvariti mogućnost da počnu da rade u jednoj od naših partnerkih kompanija (probni rad 3 mjeseca). Takođe, pojedini polaznici koje se istaknu radom i ozbiljnošću, će ostvariti pravo da tokom ljetnje pauze (jul i avgust) budu na praksi u jednoj od naših partnerskih kompanija.

A sada malo opšte priče o web-u.

World Wide Web, ili skraćeno Web, je danas jedan od najpopularnijih mehanizama za širenje informacija među ljudima. Pomoću web-a možemo prezentovati informacije koje se sastoje od riječi, slika, video i audio zapisa – i sve to bez dodatnog softvera koji korisnik mora da instalira na svom računaru – dovoljno je da ima bilo koji web pretraživač (Internet Explorer, Firefox, Chrome, Opera i sl.). Pored toga što putem Web-a korisnici mogu da primaju informacije, oni mogu i da kreiraju sopstvene web stranice i da na taj način oni postaju izvor informacija za druge.

 

 

HTML je takozvani jezik za označavanje hiper tekstova, tj. HTML (Hyper Text Markup Language) se na prvom mjestu koristi kada je potrebno kreirati određenu web stranicu uz primjenu različitih tekstualnih editora. Uobičajena definicija pojma HTML glasi: HTML je standardizovani opisni jezik, koji se primjenjuje za definisanje strukture tekstova, medija i ugrađenih objekata u okviru web stranica. Osnovnu primjenu ovaj jezik nalazi u situaciji kada je potrebno odvojiti konkretne elemente na jednoj stranici, tako da se uz primjenu HTML tagova može precizno definisati gdje treba da se nalazi naslov, na primjer, ali i svi ostali elementi koje sadrži ta stranica. A u okviru standarda koji pomenuti jezik koristi su već implementirani elementi čija je primarna svrha opisivanje karakteristika određene stranice, kao što su recimo ključne riječi ili opis sadržaja. Sve te informacije važe za takozvane meta podatke i svakako su vrlo precizno odvojeni od sadržine same stranice, tj. HTML dokumenta.

CSS je stilski jezik pomoću kojeg se definiše izgled elemenata web stranice. CSS (Cascading Style Sheets) omogućava dodavanje različitih stilova HTML elementima kao što su: veličina i vrsta slova, pozadinske boje, okviri, položaj elemenata, margine, itd…
U početku je na sebe ovu ulogu preuzimao sam HTML. Kako su vremenom sajtovi bili sve kompleksniji, kod je postao veoma nečitljiv i komplikovan za održavanje. Tada je postalo jasno da se mora uvesti neka nova metoda koja bi riješila ovaj problem. Rješenje je došlo sredinom 90-ih godina u vidu CSS-a, tada nazvanog CHSS.
Svrha CSS-a je zapravo odvajanje stila od samog sadržaja web stranice.

Javascipt je takozvani objektni skriptni jezik, čija je osnovna svrha korišćenja vezana za poboljšanje dinamike web stranica. Uz HTML i CSS, JavaScript je jedan od tri glavna temelja razvoja web stranica.  Kada posjetite web-lokaciju koja upotrebljava JavaScript jezik, vaš pretraživač prima puni JavaScript kod, i interpretira ga na licu mjesta pomoću JavaScript engina.

Program koji obrađuje i izvršava skripte zove se interpreter. Interpreter za JavaScript ugrađen je u većinu današnjih internet pretraživača. Interpreter čita kod i prevodi ga u mašinski jezik svakog puta kada se pokrene skripta. Svaki jezik koji se interpretira, tj. koji izvršava interpreter, naziva se skriptni jezik. On pomaže klijentskoj strani u interakciji sa web stranicama čije su funkcionalnosti prethodno definisane u Javascript jeziku.

Ako pogledamo najpopularniju platformu za programere GitHub, možemo vidjeti da su Java i JavaScript dva najpopularnija programska jezika na svijetu, a slijede ih Python, PHP i Ruby. Ipak, uprkos sličnim imenima, Java i JavaScript nisu povezani. Iako je njegov nastanak prvenstveno vezan za programski jezik Java koji je objektno-orijentisan, on nema skoro nikakve veze sa objektno-orijentisanim jezicima. Jedina stvar koju ima zajedničku sa Java programskim jezikom jeste sintaksa koja je nalik programskom jeziku C, odakle su je i naslijedili.

 

 

Kako se JavaScript koristi u stvarnom svijetu?

  • Web-aplikacije – Kao što smo već spomenuli JavaScript se može upotrebljavati za razvoj web stranica front-end i back-end. Front-end uključuje manipulisanje DOM-om web stranica (na primjer: animacije, umetanja podataka, asinhrona ažuriranja), a za back-end uključuje logiku poslužitelja (npr. usmjeravanje, rukovanje podacima, interakcije s bazama podataka). Neki JavaScript framework-ovi rade oboje, što se zove “full-stack” ili cjelokupni razvoj weba. Nakon završetka početnog dijela kursa kandidati će moći da se odluče da li će da nastave da uče front-end (React i React Native) gdje će se dublje baviti upravljanjem interfejsa aplikacije ili će ipak da se bave obradom i bazama podataka (NodeJS i MongoDB). Naći ćete PayPal u svakoj listi aplikacija izgrađenih preko Node.js-a (višeplatformsko JavaScript radno okruženje otvorenog koda  za izvršavanje JavaScript-a na serverskoj strani). Za ogroman saobraćaj Ebay je morao da ide sa dokazanom tehnologijom. Node.js kao dio tehnološkog stacka JavaScript-a je dobro odgovarao ovom e-commerce gigantu. “Node.js pomaže NASA-i da sačuva astronaute”. Potpuno neočekivana izjava i instanca na listi primjera aplikacija Node.js, zar ne? Iako nije baš aplikacija, ovaj Node.js projekat za svemirsku agenciju prikazuje snagu JS tehnologije. Posle jednog opasnog incidenta u svemiru, NASA je saznala da će podaci biti rasuti na mnogim lokacijama. Odlučili su da izgrade sopstveni end-to-end sistem podataka i za to odabrali Node.js. NASA je premjestila sve u cloud i konstruisala Node.js arhitekturu. Oni su koristili veb API za povezivanje dva okruženja. Kao rezultat: jedna baza podataka za sve kao i  smanjenje vremena pristupa za 300%. U stvarnom životu, ove brojke znače sigurnije uslove za astronaute da žive i rade u svemiru. Još neka od svjetski poznatih brendova koji koriste popularni JS za izgradnju svojih platformi su i Netflix, Uber, LinkedIn…
  • Desktop aplikacije – JavaScript se može skinuti s interneta i upakovati u samostalni desktop softver pomoću framework-ova poput Electron i NW.js (nekada Node-Webkit). To se obavlja grupisanjem JavaScript engine-a unutar izvršne datoteke, koja izvršava HTML/CSS/JS naredbe unutar samostalnog prozora na radnoj površini. Na tržištu postoji mnogo popularnih desktop aplikacija koje su napravljene na ovaj način, neke od njih su: VS Code, Atom, Slack, Skype itd.
  • Mobilne aplikacije – Framework poput React native ili  PhoneGap omogućavaju izradu mobilnih aplikacija pomoću JavaScripta. Ovi framework-ovi imaju tendenciju da se mogu svrstati u dvije vrste: one koje prevode JavaScript u izvorni kod i one koji upotrebljavaju JavaScript engine za prikazivanje kao samostalna aplikacija. Najpopularnije mobilne aplikacije napravljene preko JavaScript framework-a su : Facebook, Instagram, Skype, Walmart, SoundCloud, Tesla, Wix, adidas GLITCH, Pinterest…

Pojašnjenje i napomene: Po završetku prve/osnovne obuke, kandidat se opredjeljuje za jedan od dva pravca razvoja. Ukoliko nakon prvog dijela obuke kandidat želi dublje da se bavi razvojem interfejsa, preporuka je da izabere React i React Native (frontend) kurs, a ako se kandidat više zainteresuje za rad sa bazama podatka, obradu podataka, API kreiranje, i slično, preporuka je da odabere drugi pravac, tj. NodeJS i MongoDB ili Django (backend). Takođe, ukoliko se kandidat zainteresuje za obije oblasti, pružamo mogućnost da prati oba kursa.

Po završetku obuke, kreće se u realizaciju finalnog projekta. Plan je da se radi u grupama, a kombinovaće se frontend i backend programeri. Radiće se na realnim projektima.

Nakon prijava za radionice obaviće se selekcija 15-20 najboljih kandidata putem algoritamskog testa.

Primjere zadataka za test možete pogledati ovdje: Zadaci za vjezbanje

Srećno svima 🙂

Ostali kursevi