sinflar va obyektlar tizimning mantiqiy
tuzilishini tashkil qiladi; ular
tizimning fizik tuzilishini tashkil etuvchi modullarga joylashtirilgan. Bu
xususiyat, agar tizim yuzlab sinflardan iborat bo‘lsa, ayniqsa foydali bo‘ladi.
Shunday qilib, modullik va inkapsulyatsiya bir-biri bilan chambarchas
bog‘liq. Modullik turli dasturlash tillarida har xil yo‘llar bilan qo‘llab-
quvvatlanadi. Masalan, C++ da modullar alohida kompilyatsiya qilingan
fayllardir. C/C++ uchun modullarning oldingi qismini .h kengaytmasi
bo‘lgan alohida fayllarga joylashtirish odatiy holdir (sarlavha
fayllari deb
ataladi). Amalga oshirish, ya'ni modul matni .c kengaytmasi bo‘lgan
fayllarda saqlanadi (C++ dasturlarida ko‘pincha cp va .cpp kengaytmalari
ishlatiladi). Fayllar orasidagi bog‘lanish #include makroprotsessor
ko‘rsatmasi bilan e'lon qilinadi. Bu yondashuv
faqat konvensiyaga
asoslangan va tilning o‘ziga xos qat'iy talabi emas. Object Pascal tilida
modullik prinsipi biroz qat'iyroq rasmiylashtirilgan. Bu til birlikning
interfeysi va bajarilishining o‘ziga xos sintaksisini belgilaydi. Javada paket
deb ataladigan tushuncha mavjud. Har bir to‘plamda ba'zi
mantiqiy
atributlar bo‘yicha guruhlangan bir nechta sinflar mavjud.
Modullik, kerakli tavsifni topishni osonlashtirishdan tashqari, loyihani
qurish jarayonini sezilarli darajada tezlashtirishga imkon beradi (albatta,
alohida kompilyatsiyani qo‘llab-quvvatlaydigan kompilyatorlar uchun).
Tabiiyki, bularning barchasi interfeyslarning barqarorligiga juda qattiq
cheklovlar qo‘yadi, lekin barqaror interfeyslarni shakllantirish vazifasi
umuman dizayn vazifasidir.
Iyerarxiya. Abstraksiya - foydali narsa,
lekin har doim, eng oddiy
vaziyatlardan tashqari, tizimdagi mavhumliklar
soni bizning aqliy
imkoniyatlarimizdan ancha oshib ketadi. Inkapsulyatsiya abstraksiyalarning
ichki mazmunini ko‘rish maydonidan olib tashlash orqali ma'lum darajada
bu to‘siqni olib tashlashga imkon beradi. Modullik, shuningdek, mantiqiy
bog‘liq abstraksiyalarni guruhlarga ajratish orqali vazifani soddalashtiradi.
Lekin bu yetarli emas.
Iyerarxiyalarning mavjudligi - bu tizim obyektlarining ba'zi qoidalariga
muvofiq tartiblash.
Abstraksiyalardan iyerarxik tuzilmaning shakllanishi tufayli murakkab
muammolarni
tushunishda
sezilarli
soddalashtirishga
erishiladi.
Iyerarxiyani quyidagicha ta'riflaylik:
Iyerarxiya - bu
mavhumliklarning tartiblanishi, ularning darajadagi
joylashuvi.
Murakkab tizimlarga nisbatan iyerarxik tuzilmalarning asosiy turlari
sinf
tuzilishi ("is-a" ierarxiyasi) va obyekt strukturasi (“
Dostları ilə paylaş: