tegi ichiga joylashtirsa bo'ladi.
2.
Section - Agar sizning sahifayizda bir necha qismlar bo'lsa, tegi o'rniga
ushbu tegni ishlating.
3.
Article - Sahifaning mustaqil qismi bo'lib alohida turgan holda ham ma'no
beradigan qismi, masalan forumdagi biron xabar, maqola, blog va hattoki postga
qoldirilgan izoh.
12
4.
Aside - Agar sizni sahifangiz chetida menu bo'lsa shuni ishlating. Bu browser
va qidiruv tizimlariga bu navigation menyuligi haqida xabar beradi
5.
Nav - Bu teg nafaqat headerdagi navigation menu uchun ishlatiladi, balkim
istalgan navigation bor joyda ishlatilishi mumkin, aside elementi ichidagi havolalarni
ham shu teg ichida yaratish kerak, shunda qidiruv tizimi bu navigationligini
tushunadi, va hattoki sahifani qidirganda navigation bilan birgalikda topadi.
Saytning backend qismi Pythonda qilingan ekan va PHP ga o’g’irish planlari
bor ekan, amaliyotim qolgan yarmini shu vazifa bajarishga sarflardim.
Backend qismini bajarishda eng mashxur dasturiy ta’minot arxitektura tizimi
bo’lgan MVC ni ishlatdik
MVC nima
MVC bu shunaqa web loyiha arxitekturalash turiki, unda web-loyiha kichikroq
shablonlarga bo'linib taxlanadi. MVC da loyiha uch alohida komponentga ajratiladi
va bu o'z ichiga: malumotlar modeli, foydalanuvchi interfeysi hamda
foydalanuvchini tizim bilan aloqasi logikasini oladi
Bunday kichikroq komponentlarga ajratishning avzalligi shundan iboratki, bitta
qismini o'zgartirish boshqa qismini, yoki minimal o'zgartirishga, yoki umuman
o'zgartirmaslikka olib keladi.
Shunday qilib MVC da dasturni qaysidir qismini o'zgartirish, qo'shimcha
qo'shish osonroq, chunki agar siz foydalanuvchi interfeysini o'zgartirsangiz u biznes
logikaga ta'sir qilmaydi, agar biznes logikani o'zgartirmoqchi bo'lsangiz,
foydalanuvchi interfeysiga ta'sir qilmaydi.
- Model / Model - Bu ma'lumotlar bazasidagi qaysidir narsani obyekt modelini
tasvirlab, o'z ichiga asosan ma'lumotlar va ushbu ma'lumotlar bilan ishlash metodlari
yoziladi. Bundan tashqari u kontrollerdagi so'rovlarga ma'lumot qaytarib berishi yoki
13
o'zining holatini o'zgartirishi mumkin. Shunday bo'lishiga qaramasdan, model
ma'lumotlarni qanday foydalanuvchiga ko'rsatish va qanday formatlash bilan ishi
yo'q va u to'gridan to'gri foydalanuvchi bilan aloqa qilmaydi.
- Ko'rinish / View - Bu ma'lumotlar foydalanuvchiga ko'rinishini ta'minlaydi
(vizualizatsiya). Boshqacha qilib aytganda foydalanuvchi saytga kirganda nimani
ko'radi shular. Bunda kontroller foydalanuvchi so'roviga qarab ma'lumotlarni
modeldan olib bu qismga beradi, va bu asosan uni foydalanuvchiga ko'rsatish bilan
shug'ullanadi.
- Kontroller / Controller - Bu foydalanuvchi bilan tizimni bog'lab beradi.
Kontroller vazifasi foydalanuvchi so'roviga qarab, model va viewni ishlatib unga
javob qaytaradi. Kontrollerda asosan ma'lumotlar filtrlanadi va avtorizatsiya
bajariladi — ya'ni: foydalanuvchi bu amalni bajarishga huquqi bormi va kerakli
ma'lumotlarni olib bilishi ta'minlandimi.
Ko'plab web ilovalar yaratishga mo'ljallangan freymvorklar MVC prinsipiga
asoslanib tuzilgan bo'ladi. Shuning uchun ham MVC sizga tanish bo'lsa, unda bu
freymvorklarni tushunishingiz oson bo'ladi