Šta je Scratch?
Scratch je vizuelni programski jezik i platforma za učenje programiranja, namenjena deci i početnicima. U njemu ne pišemo kod – već spajamo blokove kao lego kockice! Na taj način lako možemo da pravimo igrice, animacije, priče i kvizove.
Za rad u Scratch-u ti nije potrebno nikakvo predznanje iz programiranja.

Gde se šta nalazi u Scratch-u?
Za početak napravi nalog na scratch.mit.edu.
Kada kreiraš svoj prvi projekat, Scratch platforma će izgledati kao na slici ispod.

Scratch je preveden i na srpski jezik!

U zaglavlju, odmah pored Scratch logoa, nalazi se ikonica „Settings” (Podešavanja).
Kada klikneš na nju, pojaviće se padajući meni. Tu selektuj opciju „Language” i odaberi jezik po želji. Ako želiš da programiraš na srpskom, izaberi srpski jezik.
Mi ćemo nastaviti program koristiti na engleskom jeziku, kako bismo bili spremni jednog dana da programiramo na engleskom koji je globalni jezik u svetu programiranja.

Šta je šta u Scratch-u?
Sada ćemo zajedno da istražimo šta svaka funkcija znači i kako se koristi na platformi. Ostatak ćete otkrivati usput, jer je to mnogo zabavniji način da učite!
Stage (Pozornica)
Pozornica je mesto na kojem se sve dešava, ne samo u pozorištu, već i u Scratch-u. Ovde ćete videti vaše junake koje ste odabrali i način na koji oni „nastupaju” u zavisnosti od toga kako ste ih programirali.

Code area (Programski okvir)
Programski okvir je mesto na koje prevlačimo blokove koda iz palete za programiranje (Code blocks).
Ovo je prostor gde se blokovi spajaju i formiraju konkretne akcije koje vaši likovi izvode. Kada povežete blokove na pravi način, vaš program postaje funkcionalan i počinje da radi onako kako ste zamislili!

Sprite (Figure)
Glavni element Scratch programa su bića i predmeti. Na engleskom se zovu sprite (ne, ne mislimo na piće). U srpskom jeziku ih možemo zvati figure.

Lista figura
U donjem desnom uglu možeš u svakom trenutku da vidiš listu figura koje smo dodali u program.
Tamo se nalaze svi tvoji junaci, predmeti i pozadine koje koristiš u projektu. Možeš lako da ih menjaš, dodaješ nove ili brišeš one koje ti nisu potrebne.


Osnovni koncepti
Kad krenemo sa učenjem programiranja, uvek počinjemo od osnovnih koncepata.
Možda na prvi pogled ovo zvuči strašno, ali neke koncepte iz programiranja već koristimo u svakodnevnom životu. Na primer, razmišljanje o tome šta treba da uradimo i u kojem redosledu – kao kada pratimo recept za kolač!
Naredbe
Mi kao programeri pišemo naredbe koje program mora da izvrši.
To je slično kao kada nam mama kaže: „Uradi domaći zadatak”, „Pročitaj knjigu”, „Pojedi supu” – svaka od tih reči je kao naredba koju treba da izvršimo.

Grafički blokovi
U Scratch jeziku te naredbe su vizuelni blokovi. Umesto da pišemo kod u obliku teksta, u Scratch-u koristimo blokove koje jednostavno prevlačimo i spajamo.

Petlje
Petlja je naredba koja u programiranju omogućava da se radnja ponovo određeni broj puta dok se ne isputi određeni uslov.
Naredbe u Scratch-u se izvršavaju jedna za drugom, zato je bitan njihov redosled!

Uslovi
Uslovi, na primer „if“ i „if – else“, proveravaju da li je neki uslov ispunjen. Ako jeste, izvršiće se određene naredbe. Ako nije, izvršiće se druge naredbe.
Na primer:
„Ako pada kiša, otvori kišobran; ako ne pada kiša, uživaj na suncu.”
U programiranju, ovo funkcioniše slično. Ako je uslov ispunjen, računar izvršava akciju, a ako nije, prelazi na sledeću.

Događaji
Program sluša i reaguje na različite događaje koje je pokrenuo korisnik ili neki drugi deo programa.
Na primer, kada pritisneš na neko određeno dugme na tastaturi, pomeriš miš, program može da reaguje na te akcije i izvrši određene naredbe. Ovi događaji omogućavaju da program postane interaktivan.

Promenljive
Promenljive koristimo kada želimo da čuvamo određene vrednosti u programu. One nam pomažu da čuvamo informacije koje se mogu menjati tokom izvršavanja programa.
Promenljive mogu biti:
- Globalne promenljive – važe za ceo program i mogu se koristiti u svim delovima programa.
- Lokalne promenljive – važe samo za određene delove programa, na primer, unutar određene funkcije ili skripte.
Na primer, ako želiš da pratiš broj poena u igri, možeš napraviti promenljivu koja će se menjati svaki put kada igrač postigne poen. Ako je ta promenljiva globalna, biće dostupna u svim delovima igre.

Operatori
Najčešće korišćene logičke operacije su:
- Logički i (AND) – uslov je ispunjen samo ako su oba uslova tačna.
Na primer: Ako je vreme lepo i ako je subota, idemo na izlet. - Logički ili (OR) – uslov je ispunjen ako je barem jedan od uslova tačan.
Na primer: Ako je vreme lepo ili ako je slobodan dan, idemo na izlet. - Logički ne (NOT) – uslov je ispunjen samo ako neki uslov nije tačan.
Na primer: Ako nije kiša, idemo na izlet.
Logičke operacije koristimo u okviru “if” uslova (if-else), čime možemo da kombinujemo više uslova i napravimo složenije odluke u programu.
