Dasturlashda bog'lanish va bog'lanish nima?
sobes.tech AI
AIdan javob
Kohesion (Cohesion) — bu modul ichidagi elementlar qanchalik yaqin bog‘langanligini o‘lchovchi mezodir. Yuqori kohesion, modul elementlari bitta vazifa yoki konseptga qaratilganligini anglatadi. Yaxshi loyihalashtirilgan modul yuqori kohesionga ega.
Kohesionning (birlikning) darajalariga misollar (pastdan yuqoriga):
- Tasodifiy (Coincidental): Elementlar tasodifan bog‘langan, mantiqiy bog‘lanish yo‘q.
- Mantiqiy (Logical): Elementlar mantiqiy bog‘liq harakatlar to‘plamini bajaradi, ammo tanlov tashqi kod tomonidan amalga oshiriladi.
- Vaqt (Temporal): Elementlar bir vaqtda bajariladi.
- Protsedural (Procedural): Elementlar bajarilish protsedurasiga amal qiladi.
- Kommunikatsion (Communicational): Elementlar bir xil ma’lumotlar bilan ishlaydi.
- Silsilali (Sequential): Bir elementning chiqishi boshqasining kirishidir.
- Funktsional (Functional): Barcha elementlar aniq belgilangan funksiyani bajarishga hissa qo‘shadi.
Kopplash (Coupling) — bu turli modullar o‘rtasidagi bog‘liqlik darajasi. Past kopplash, modullar bir-biridan nisbatan mustaqil bo‘lishini anglatadi. Kopplashni kamaytirish, tizimni yanada moslashuvchan, qo‘llab-quvvatlash va test qilish uchun qulay qiladi.
Kopplashning (bog‘lanish darajasi) misollari (yuqoridan pastga):
- Kontent (Content): Bir modul, boshqa modulning ichki ma’lumotlariga yoki amalga oshirilishiga to‘g‘ridan-to‘g‘ri murojaat qiladi.
- Umumiy (Common): Modullar umumiy global ma’lumotlar maydonidan foydalanadi.
- Boshqaruv (Control): Bir modul boshqaruv flagini uzatadi, bu esa boshqa modulning xulq-atvorini belgilaydi.
- Stamp (Stamp): Birgalikda uzatiladigan murakkab ma’lumotlar (obyektlar, tuzilmalar), ammo modul faqat ulardan bir qismini ishlatadi.
- Ma’lumotlar (Data): Oddiy ma’lumotlarni parametrlar sifatida uzatish.
- Xabarlar (Message): Modullar xabarlar almashadi (masalan, voqealar, interfeyslar orqali). Bu eng zaif bog‘lanish shaklidir.
Yaxshi dizayn maqsadi: yuqori kohesion (modullar ichida) va past kopplash (modullar o‘rtasida).