# Frontend va backend farqi

> Frontend va backend nima farq qiladi? Har birining vazifasi, ishlatiladigan tillar, ular qanday ishlashi va fullstack tushunchasi tushuntiriladi.

Manba: https://learncode.uz/web-dasturlash/frontend-backend/
Sana: 2026-05-07

![Saytning ko'rinadigan frontend va serverdagi backend qismlari birga ishlashini ko'rsatuvchi rasm](https://learncode.uz/images/web-dasturlash/frontend-backend-hero.webp)

*Frontend foydalanuvchi ko'radigan qismni, backend esa sayt mantiqi va ma'lumotini boshqaradi.*

[Mijoz-server](https://learncode.uz/web-dasturlash/web-dasturlash-nima) modelida saytning ikki
tomoni bor edi. Web dasturlashda bu ikki tomon **frontend** va **backend**
deb ataladi. Bu darsda ularning vazifasi va farqini aniq ajratamiz.

## Frontend — foydalanuvchi tomoni

**Frontend** — saytning brauzerda ko'rinadigan va foydalanuvchi bilan
ishlaydigan qismi: sahifa tuzilishi, matn va rasmlar, tugmalar, formalar,
animatsiyalar va foydalanuvchi harakatiga beriladigan javob. U uchta asosiy
web texnologiyasiga tayanadi:

| Texnologiya | Vazifasi |
|---|---|
| HTML | Sahifa tuzilishi (nima bor) |
| CSS | Ko'rinishi (qanday ko'rinadi) |
| JavaScript | Harakati (bosilganda nima bo'ladi) |

Frontend "mijoz tomoni" (client-side) ham deyiladi — chunki u foydalanuvchi
brauzerida ishlaydi. Frontend dasturchi faqat dizaynni kodga aylantirmaydi.
U sahifaning turli ekranlarda ishlashi, klaviatura bilan boshqarilishi,
tez yuklanishi va serverdan kelgan ma'lumotni to'g'ri ko'rsatishiga ham javob
beradi.

Masalan, internet-do'kondagi mahsulot kartasi frontend vazifasidir: rasm,
narx va tugmaning joylashuvi HTML va CSS bilan quriladi, "Savatga qo'shish"
bosilgandagi harakat esa JavaScript orqali boshqariladi.

## Backend — server tomoni

**Backend** — serverda ishlaydigan, ko'rinmaydigan qism. U ma'lumotni
saqlaydi, hisoblaydi, tekshiradi va frontendga uzatadi. Masalan tizimga
kirishda foydalanuvchi yuborgan ma'lumotni tekshiradigan, parol xeshini
solishtiradigan va ruxsat berish-bermaslikni hal qiladigan qism — backend.

Backend [Python](https://learncode.uz/python/python-nima), PHP, Java kabi tillarda yoziladi va
[ma'lumotlar bazasi](https://learncode.uz/sql/malumotlar-bazasi-nima) bilan ishlaydi.
Shuningdek, u biznes qoidalarini bajaradi. Masalan, omborda qolmagan mahsulotni
sotishga yo'l qo'ymaslik yoki foydalanuvchi faqat o'z buyurtmasini ko'rishini
ta'minlash backend vazifasidir.

![Frontendning brauzer, ko'rinish va harakatga, backendning server, mantiq va ma'lumotga javob berishi](https://learncode.uz/images/web-dasturlash/frontend-backend-farqi.webp)

*Frontend brauzerda HTML, CSS va JavaScript bilan ishlaydi; backend serverda mantiq va ma'lumotni boshqaradi.*

> **Atama**
>
> **Client-side va server-side:** frontend foydalanuvchi qurilmasida (brauzerda)
> ishlaydi — client-side. Backend uzoqdagi serverda ishlaydi — server-side.
> Maxfiy kalitlar va ishonch talab qiladigan tekshiruvlar server-side'da turishi
> kerak. Lekin serverda yozilgan kod o'z-o'zidan xavfsiz bo'lib qolmaydi:
> backend brauzerdan kelgan har bir qiymatni tekshirishi va foydalanuvchiga
> faqat ruxsat berilgan amalni bajartirishi shart.

## Ular qanday birga ishlaydi

Frontend va backend so'rov-javob orqali gaplashadi. Masalan mahsulotlar
ro'yxatini ko'rsatish:

1. Frontend backendga so'raydi: "mahsulotlar ro'yxatini ber".
2. Backend so'rov manzili, foydalanuvchi huquqi va yuborilgan qiymatlarni
   tekshiradi.
3. Kerak bo'lsa, ma'lumotlar bazasidan yozuvlarni oladi.
4. Backend holat kodi va ma'lumotdan iborat javob qaytaradi.
5. Frontend javobni o'qib, natijani ekranga chizadi yoki xato xabarini
   ko'rsatadi.

Ish shunday taqsimlanadi: backend **ma'lumot**ni, frontend uning
**ko'rinishi**ni ta'minlaydi. Amalda chegara har doim ham mutlaq emas:
frontend ham ma'lumotni vaqtincha qayta ishlashi, backend esa tayyor HTML
qaytarishi mumkin. Asosiy farq — kodning qayerda ishlashi va nimaga ishonish
mumkinligida.

![Frontend so'rovi backend va ma'lumotlar bazasi orqali qayta ishlanib, javob ekranga chiqarilishi](https://learncode.uz/images/web-dasturlash/frontend-backend-oqimi.webp)

*Frontend so'rov yuboradi, backend bazadan ma'lumot oladi va javobni ekranga chiqarish uchun qaytaradi.*

> **Yodda tuting**
>
> Ikkalasini biladigan dasturchi — **fullstack**. Lekin boshida bittasini
> tanlab chuqurlashish afzal. Ko'rinadigan natija tez kerak bo'lsa — frontend;
> mantiq va ma'lumot qiziq bo'lsa — backend. Keyin ikkinchisini qo'shish oson.

> **O'zingiz tekshirib ko'ring**
>
> Login sahifasidagi ishlarni ikki guruhga ajrating: forma va xato matnini
> ko'rsatish, email formatini dastlabki tekshirish, parol xeshini solishtirish,
> foydalanuvchi sessiyasini yaratish. Birinchi ikkisi frontendda bajarilishi
> mumkin, lekin kirishga ruxsat beradigan yakuniy tekshiruv va sessiya yaratish
> backend vazifasidir.

## Qisqacha xulosa

- **Frontend** — brauzerda ishlaydigan interfeys (HTML, CSS, JavaScript).
- **Backend** — serverda ishlaydigan mantiq, tekshiruv va ma'lumotlar qismi.
- Frontend — client-side, backend — server-side.
- Ular so'rov-javob orqali ishlaydi; ikkala tomon ham xatolarni hisobga oladi.
- Brauzerdan kelgan ma'lumotga ishonilmaydi — muhim tekshiruv backendda
  takrorlanadi.
- Ikkalasini biladigan — **fullstack**; boshlash uchun bittasini tanlang.

Keyingi darsda [brauzer sahifani qanday
ochishini](https://learncode.uz/web-dasturlash/brauzer-sahifa), undan keyin esa HTTP
so'rov-javob oqimini ko'ramiz.
