# Web dasturlash nima va qanday ishlaydi

> Web dasturlash qanday ishlaydi? Domen, DNS, IP manzil, HTTPS so'rovi, server javobi va brauzerning HTML, CSS hamda JavaScriptni sahifaga aylantirish jarayoni.

Manba: https://learncode.uz/web-dasturlash/web-dasturlash-nima/
Sana: 2026-05-06

![Brauzer, server va tayyor sahifa orqali web dasturlash qanday ishlashini ko'rsatuvchi rasm](https://learncode.uz/images/web-dasturlash/web-dasturlash-nima-hero.webp)

*Brauzer tarmoq orqali server bilan bog'lanadi va olingan fayllarni foydalanuvchi ko'radigan sahifaga aylantiradi.*

[Dasturlash asoslari](https://learncode.uz/dasturlash-asoslari/web-dasturlash) darsida frontend
va backend bilan qisqacha tanishgandik. Endi saytning parda ortidagi ishini
aniq ketma-ketlikda ko'ramiz: foydalanuvchi manzil yozadi, brauzer serverni
topadi, so'rov yuboradi va kelgan fayllardan sahifa hosil qiladi.

Bu jarayonni tushunish keyingi mavzular — frontend, backend, HTTP, server,
ma'lumotlar bazasi va API — bir-biriga qanday bog'lanishini anglash uchun
asos bo'ladi.

## Internet va web bir xil emas

**Internet** — dunyo bo'ylab bog'langan tarmoqlar va qurilmalar
infratuzilmasi. **Web** esa shu infratuzilma ustida ishlaydigan xizmatlardan
biri: brauzer va serverlar HTTP yoki uning xavfsiz turi — HTTPS orqali
ma'lumot almashadi.

Jarayonda quyidagi tushunchalar qatnashadi:

| Tushuncha | Vazifasi |
|---|---|
| **Brauzer** | Foydalanuvchi nomidan so'rov yuboradi va sahifani ko'rsatadi |
| **Domen** | Odam eslab qolishi oson bo'lgan manzil, masalan `learncode.uz` |
| **DNS** | Domen nomiga mos IP manzilni topadi |
| **IP manzil** | Tarmoqdagi serverning raqamli manzili |
| **Server** | So'rovni qabul qiladi va kerakli javobni tayyorlaydi |

## URL manzilining qismlari

Brauzerga yoziladigan to'liq manzil **URL** deyiladi. Masalan:

`https://learncode.uz/web-dasturlash/api-nima?til=uz#xulosa`

Bu manzil bir nechta ma'noli qismdan tuzilgan:

| Qism | Misol | Vazifasi |
|---|---|---|
| Protokol | `https` | Aloqa qanday himoyalanishini va bajarilishini bildiradi |
| Domen | `learncode.uz` | DNS orqali kerakli xizmatni topishga yordam beradi |
| Path | `/web-dasturlash/api-nima` | Serverdagi qaysi resurs so'ralganini bildiradi |
| Query | `?til=uz` | So'rovga qo'shimcha parametr yuboradi |
| Fragment | `#xulosa` | Brauzerni sahifaning muayyan joyiga olib boradi |

Fragment odatda serverga yuborilmaydi; u sahifa ichida brauzer tomonidan
ishlatiladi. Domen esa butun URL emas — faqat uning bitta qismi. Bu farq HTTP
va route mavzularini o'rganishda muhim bo'ladi.

> **Muhim farq**
>
> **Mijoz** deganda telefon yoki kompyuterning o'zi emas, serverga so'rov
> yuborayotgan dastur tushuniladi. Web sahifada bu vazifani odatda brauzer
> bajaradi.

## Mijoz-server modeli

Web saytlar odatda **mijoz-server** modeli asosida ishlaydi. Mijoz biror
resursni so'raydi, server esa so'rovni qayta ishlab javob qaytaradi.

Oddiy sahifa ochilganda jarayon shunday ko'rinadi:

1. Brauzer kerakli manzil uchun serverga **so'rov** yuboradi.
2. Server so'rov manzili va turini tekshiradi.
3. Zarur bo'lsa, server dastur kodini bajaradi yoki ma'lumotlar bazasidan
   ma'lumot oladi.
4. Server **javob** qaytaradi: holat kodi, sarlavhalar va kerakli ma'lumot.
5. Brauzer javobni qayta ishlab, natijani foydalanuvchiga ko'rsatadi.

Bu restorandagi buyurtmaga o'xshaydi: mijoz buyurtma beradi, oshxona uni
tayyorlaydi va natijani qaytaradi. Farqi shundaki, webda bu muloqot aniq
qoidalar — HTTP yoki HTTPS protokoli — orqali bajariladi.

![Brauzer serverga so'rov yuborib, serverdan tayyor javob oladigan mijoz-server modeli](https://learncode.uz/images/web-dasturlash/mijoz-server-modeli.webp)

*Brauzer resursni so'raydi, server so'rovni qayta ishlab javob qaytaradi.*

> **Javob faqat sahifa bo'lmasligi mumkin**
>
> Server HTML hujjati, rasm, video, JSON ma'lumoti yoki xato haqidagi javobni
> qaytarishi mumkin. Javob turi brauzer yuborgan so'rovga bog'liq.

## Manzil yozganda nima sodir bo'ladi

Brauzerga `learncode.uz` manzilini yozib, Enter tugmasini bosganingizda
quyidagi bosqichlar bajariladi:

1. **Manzil tahlil qilinadi.** Brauzer domen va foydalaniladigan protokolni
   aniqlaydi.
2. **Server topiladi.** DNS tizimi `learncode.uz` domeniga mos IP manzilni
   yoki keyingi tarmoq manzilini topishga yordam beradi. Javob CDN yoki
   yuklamani taqsimlovchi xizmatga ham olib borishi mumkin.
3. **Xavfsiz aloqa o'rnatiladi.** HTTPS ishlatilsa, brauzer server
   sertifikatini tekshiradi va shifrlangan ulanish yaratadi.
4. **HTTP so'rovi yuboriladi.** Brauzer odatda sahifaning HTML hujjatini
   so'raydi.
5. **Server javob qaytaradi.** Javobda holat kodi va HTML hujjati bo'lishi
   mumkin.
6. **Qo'shimcha fayllar yuklanadi.** Brauzer HTML ichidagi manzillar bo'yicha
   [CSS](https://learncode.uz/html-css/css-nima), JavaScript, rasmlar va shriftlarni alohida
   so'rovlar bilan oladi.
7. **Sahifa chiziladi.** Brauzer HTMLdan sahifa tuzilishini, CSSdan
   ko'rinishni yaratadi va JavaScript yordamida interaktiv xatti-harakatlarni
   ishga tushiradi.

![Domen yozilgandan DNS orqali server topilishi, fayllar olinishi va sahifa ochilishigacha bo'lgan umumiy jarayon](https://learncode.uz/images/web-dasturlash/manzil-sahifa-jarayoni.webp)

*Grafik umumiy oqimni soddalashtirib ko'rsatadi; amalda HTMLdan keyin CSS, JavaScript, rasm va boshqa fayllar uchun qo'shimcha so'rovlar yuboriladi.*

Jarayon tezligi internet ulanishi, serverning javob vaqti, foydalanuvchiga
bo'lgan masofa va sahifa fayllarining hajmiga bog'liq. Yaxshi optimallashtirilgan
saytda asosiy kontent juda tez ko'rinadi, lekin buning har doim bir soniyadan
kam bo'lishiga kafolat yo'q.

Brauzer bir xil manzilga har safar tarmoqdan to'liq murojaat qilmasligi ham
mumkin. Oldingi javobning yaroqli nusxasi **cache**da bo'lsa, ayrim fayllar
lokal xotiradan olinadi. Serverga yaqinroq CDN tuguni, siqilgan fayllar va
to'g'ri cache qoidalari yuklanishni tezlashtiradi.

## Web dasturchi qaysi qismini quradi

Web dasturchi shu zanjirning bir yoki bir nechta qismini yaratadi:

- **Frontend dasturchi** brauzerda ishlaydigan tuzilish, dizayn va
  interaktivlikni yaratadi.
- **Backend dasturchi** serverdagi mantiq, xavfsizlik, ma'lumotlarni qayta
  ishlash va bazaga murojaat qilishni tashkil etadi.
- **Fullstack dasturchi** frontend va backendning ikkalasi bilan ham ishlaydi.

> **Yodda tuting**
>
> Brauzer va server bitta tizimning ikki tomoni. Foydalanuvchi ko'radigan
> natija tez va to'g'ri ishlashi uchun frontend, backend, tarmoq va ma'lumotlar
> bazasi o'zaro muvofiq ishlashi kerak.

## Qisqacha xulosa

- Internet — tarmoqlar infratuzilmasi, web esa uning ustida ishlaydigan
  xizmatlardan biri.
- URL protokol, domen, path, query va fragment kabi qismlardan tuziladi.
- DNS domen nomiga mos server IP manzilini topishga yordam beradi.
- Brauzer HTTP yoki HTTPS orqali so'rov yuboradi, server esa javob qaytaradi.
- Brauzer avval HTMLni, so'ng unga bog'langan CSS, JavaScript, rasm va boshqa
  fayllarni yuklaydi.
- Frontend brauzerda, backend esa serverda ishlaydi; ikkalasi so'rov-javob
  orqali bog'lanadi.

Keyingi darsda [frontend va backend farqi](https://learncode.uz/web-dasturlash/frontend-backend)
— web tizimining ikki asosiy qismini batafsil ko'ramiz.
