# MVC nima?

**MVC** bu - **MODEL** (Model) **VIEW** (Ko'rinish) **CONTROLLER** (Kontroller) so'zlarning bosh harflari qisqartmasidan olingan bo'lib **ARCHITECTURAL DESIGN PATTERN** (Arxitekturaviy dizayn paterni) hisoblanadi. MVC sizning loyihangizni asosiy uchta qatlamga (MODEL,VIEW,CONTROLLER) ga bo'lish orqali dasturning strukturasini qulaylashtiradi. Foydalanuvchidan kelayotgan so'rov controllerga yo'naltiradi. Controller **business logic** (bajariladigan vazifaning mohiyati) qismi hisoblanib, model bilan ishlashga javobgar sanaladi. Model malumotlar bazasi bilan aloqa qiladi va ko'p holarda malumotlar bazasidagi jadvalni ifodalaydi. Controller viewni tanlaydi va unga modelni jo'natadi. View foydalanuvchiga korinadigan tomonni ifodalaydi.

![](https://2189654329-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-ML4YbrwilsjU6IyB7jd%2Fsync%2F1ae053658ee8b7878dba24755987b3541c2a4951.png?generation=1632114196891490\&alt=media)

Yuqoridagi diagrammada Model View va Controller orasidagi bog'liqliklar ko'rsatilgan. MVC ning asosiy maqsadlaridan bir vazifalarni Model View va Controllerga taqsimlashdir. Bu orqali loyihani **coding (kod yozish), debug (tekshirish) va testing (testlash)** jarayoni osonlashadi. **MVC** patterni orqali siz **scalable** (keng miqyosdagi) va **extensible** (kengayuvchi) loyihalar yaratishi qulayroqdir.
