Sobes.tech
Middle

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).