Šta je web i kako rade web aplikacije
Svaki put kada otvoriš sajt, gledaš video ili šalješ poruku u pregledaču, koristiš web. Ova lekcija objašnjava osnovnu ideju: pregledač (klijent) traži, server odgovara – i iz toga nastaje sve, od jednostavne stranice do aplikacija kao što su YouTube i Gmail.
Kako da učiš: svaki primer isprobaj u pregledaču ili komandnoj liniji i uradi vežbe iz lekcije. Primeri su u HTML-u, JavaScript-u i Python-u; za većinu je dovoljan pregledač, a za Python primere instaliran Python 3.
Internet i web nisu isto
| Internet | Web (World Wide Web) | |
|---|---|---|
| Šta je | mreža koja povezuje računare celog sveta | skup stranica i aplikacija koje se otvaraju u pregledaču |
| Primeri upotrebe | email, video pozivi, igre, web, IoT uređaji | sajtovi, online prodavnice, društvene mreže |
| Nastao | 1969 (ARPANET), današnji oblik 1983 | 1989–1991, Tim Berners-Lee (CERN) |
| Osnovni protokol | TCP/IP | HTTP / HTTPS |
Web je, dakle, jedna od usluga koje rade preko interneta. Kako internet pronalazi računare objašnjava sledeća lekcija, Kako radi internet.
Klijent i server
Svaka komunikacija na webu ima dve strane:
| Uloga | Ko je to | Šta radi |
|---|---|---|
| klijent | pregledač (Chrome, Firefox, Edge, Safari) ili mobilna aplikacija | šalje zahtev (request) i prikazuje odgovor |
| server | program na računaru koji je stalno uključen i povezan na internet | prima zahtev, obrađuje ga i vraća odgovor (response) |
PREGLEDAČ (klijent) SERVER
┌─────────────────┐ zahtev: daj /index.html ┌──────────────┐
│ │ ─────────────────────────▶ │ │
│ prikazuje │ │ pronađe ili │
│ stranicu │ ◀───────────────────────── │ napravi │
└─────────────────┘ odgovor: HTML stranica │ odgovor │
└──────────────┘
Poređenje sa restoranom: ti (klijent) naručuješ, konobar odnosi narudžbinu u kuhinju (server), kuhinja pripremi jelo i konobar ga donese. Ti ne ulaziš u kuhinju – dobijaš samo gotovo jelo.
Statički sajt, dinamički sajt, web aplikacija
| Vrsta | Kako nastaje stranica | Primer |
|---|---|---|
| statički sajt | server šalje gotove HTML fajlove – svako dobija isto | lični sajt, dokumentacija, ovaj sajt sa lekcijama |
| dinamički sajt | server pravi stranicu za svaki zahtev (često iz baze podataka) | vesti, forum, rezultati takmičenja |
| web aplikacija | stranica se ponaša kao program: prijava, unos, čuvanje podataka, rad u realnom vremenu | Gmail, Google Docs, online učionica, Petlja |
Granica nije oštra: i statički sajt može imati JavaScript koji ga čini interaktivnim, a web aplikacija može imati i statičke delove.
Od čega se sastoji web aplikacija
| Deo | Gde radi | Tehnologije |
|---|---|---|
| frontend – ono što korisnik vidi | u pregledaču | HTML (struktura), CSS (izgled), JavaScript (ponašanje) |
| backend – logika i podaci | na serveru | Python (Django, Flask), C# (ASP.NET Core), JavaScript (Node.js), Java, PHP |
| baza podataka | na serveru | SQL baze (PostgreSQL, MySQL, SQLite), druge baze |
| API – dogovor kako frontend i backend razmenjuju podatke | između njih | HTTP + JSON |
Svaki od ovih delova ima svoju lekciju: Frontend i backend, Šta je API.
Šta se dešava kada ukucaš adresu – kratko
- Pregledač iz adrese (
https://svetprogramiranja.com/uvod_u_web) pročita ime servera. - Preko DNS-a sazna IP adresu tog servera.
- Uspostavi vezu i pošalje HTTP zahtev.
- Server vrati HTTP odgovor – HTML stranicu.
- Pregledač pročita HTML, zatraži i CSS, JavaScript i slike, pa iscrta stranicu.
Sve to traje delić sekunde. Svaki korak je detaljno objašnjen u lekcijama Kako radi internet i HTTP protokol.
Vežba: pogledaj šta pregledač radi
Alat pregledača (DevTools): u Chrome-u, Edge-u i Firefox-u otvara se tasterom F12 (ili desni klik → Inspect / Pregledaj). Najvažniji tabovi su Elements (HTML i CSS stranice), Console (poruke i greške JavaScript-a) i Network (svi zahtevi koje stranica šalje).
- Otvori bilo koju stranicu ovog sajta i pritisni F12.
- Izaberi tab Network i osveži stranicu (F5).
- Pogledaj listu: koliko je zahteva poslato? Koji su HTML, koji CSS, JS, slike (kolona Type)?
- Klikni na prvi zahtev (sam dokument) i pogledaj Status – trebalo bi da piše
200.
Jedna „obična“ stranica obično pošalje desetine zahteva – za svaki fajl po jedan.
- „Web“ i „internet“ nisu sinonimi – web je usluga koja radi preko interneta.
- Pregledač ne „ima“ sajt – svaki put ga traži od servera (ili iz svoje privremene memorije, keša).
- Frontend radi kod korisnika, backend na serveru – lozinke i važna pravila nikada se ne proveravaju samo u frontendu.
Proveri znanje
Otvori kviz
Uvod u web
1. Šta je klijent u web komunikaciji?
2. Koja je razlika između statičkog i dinamičkog sajta?
3. Koji jezik određuje strukturu web stranice?
4. Ko je osmislio web?
Web programiranje → Uvod u web
Šta je web aplikacija i kako funkcioniše internet
Web početna:Povratak na vodič | Sledeća lekcija: Kako radi web server
Uvod
Danas skoro sve što koristimo na internetu su web aplikacije — od društvenih mreža do online prodavnica.
U ovom kursu naučićete kako da razumete i napravite takve aplikacije.
Ali pre nego što počnemo sa kodiranjem, važno je da razumete kako web zapravo funkcioniše.
Da razumete osnovnu ideju web aplikacija i kako browser i server komuniciraju.
Šta je web aplikacija?
Web aplikacija je program koji koristimo preko interneta — kroz browser kao što su Chrome, Firefox ili Edge.
Za razliku od klasičnih programa koje instaliramo na računar, web aplikacije rade na udaljenim serverima.
Primeri web aplikacija:
- YouTube — gledanje videa
- Gmail — slanje i primanje mejlova
- Instagram — društvena mreža
- Online prodavnice
Kada koristite web aplikaciju, vaš računar prikazuje sadržaj — ali logika se izvršava na serveru.
Statički i dinamički sajtovi
Postoje dve osnovne vrste web stranica:
- Statički sajtovi — uvek prikazuju isti sadržaj
- Dinamički sajtovi — sadržaj se menja u zavisnosti od korisnika
Na primer:
- blog → statički sadržaj
- Facebook / Gmail → dinamički sadržaj
Dinamički sajtovi koriste backend (npr. Python + Django).
Kako funkcioniše web?
Web funkcioniše kao komunikacija između dva dela:
- Browser (klijent) — šalje zahtev
- Server — obrađuje zahtev i šalje odgovor
Ovaj proces se naziva:
- request (zahtev)
- response (odgovor)
Primer iz stvarnog života
Zamislite da naručujete hranu:
- Vi ste browser
- Restoran je server
- Narudžbina = request
- Hrana = response
Svaki klik na dugme ili otvaranje stranice šalje novi request serveru.
Šta se dešava kada ukucate URL?
www.google.com
- Browser šalje zahtev serveru
- Server obrađuje zahtev
- Server vraća HTML stranicu
- Browser prikazuje stranicu
Sve se ovo dešava za manje od jedne sekunde.
Frontend i backend
- Frontend — ono što korisnik vidi
- Backend — logika aplikacije
Frontend
- HTML — struktura
- CSS — izgled
- JavaScript — interakcija
Backend
- Python (Django)
- Rad sa bazom
- Obrada podataka
Frontend = vidljivo Backend = logika
Video: Kreiranje prve web stranice
Pogledajte kako izgleda kreiranje jednostavne web stranice koristeći HTML i CSS:
Ovo je primer frontend dela — ono što korisnik vidi u browseru.
Kako frontend i backend rade zajedno?
- Korisnik klikne dugme
- Frontend šalje zahtev
- Backend obrađuje zahtev
- Backend vraća odgovor
Mini eksperiment
1. Otvori neku web stranicu 2. Desni klik → Inspect 3. Otvori tab "Network" 4. Osveži stranicu
Posmatraj:
- Koliko zahteva se šalje
- Koje fajlove učitava (HTML, CSS, JS)
Izazov
Ako želiš da proveriš razumevanje, pokušaj da objasniš::
- Šta je browser?
- Šta je server?
- Šta je request?
- Šta je response?
Zašto je ovo važno?
Ovo je temelj za sve dalje:
- Django
- API
- Baze podataka
Bez ovoga backend izgleda komplikovano — sa ovim postaje logičan.
Gde se ovo koristi u praksi?
Razumevanje kako web funkcioniše koristi se u gotovo svim modernim aplikacijama:
- web sajtovi i portali
- online prodavnice (e-commerce)
- mobilne aplikacije koje koriste API
- platforme za učenje, bankarstvo i društvene mreže
Bez ovog znanja teško je razumeti kako sistemi rade u realnim projektima.
Povezane lekcije
Šta sledi?
- Kako radi web server
- HTTP protokol
- Kako server obrađuje zahteve
