Пов'язаність (програмування)Пов'язаність (згуртованість?) (англ. cohesion) в програмуванні - це міра того наскільки пов’язаним є код в одному модулі програми (наприклад через спільну семантику). Методи оцінки пов'язаності варіюються від якісних оцінок тексту програми з використанням рубрик з герменевтичним підходом до кількісних вимірювань міри пов'язаності коду програми. Пов'язаність - ординальна величина, і зазвичай в розмові виражається як "висока пов'язаність" чи "низька пов'язаність". Модулям з високою пов'язаністю віддається перевага, тому що висока пов'язаність асоціюється з кількома бажаними рисами програмного забезпечення, включаючи відмовостійкість, надійність, здатність до повторного використання, та зрозумілість, в той час, як низька пов'язаність асоціюється з небажаними рисами, такими як складність підтримки, тестування, повторного використання та розуміння. Пов'язаність часто протиставляється зв'язності - іншому поняттю, однак висока пов'язаність часто корелює з слабкою зв'язністю. Метрики програмного забезпечення такі як пов'язаність та зв'язність винайдені Ларрі Констянтином[1] і базуються на характеристиках "добрих" практик програмування, які зменшують витрати на модифікацію та підтримку. Слабка пов'язаністьВ ООП, якщо методи деякого класу як правило подібні в багатьох аспектах, то клас вважається таким що має високу пов'язаність. Пов'язаність зменшується якщо:
Недоліками низької (слабкої) пов'язаності є:
Типи пов'язаностіПов'язаність це якісна міра, тобто текст програми досліджується за рубриками, для класифікації пов'язаності. Види пов'язаності в порядку від найгіршого до найкращого:
Дослідження багатьох людей, таких як Ларрі Констянтин, Edward Yourdon, та Steve McConnell [2] показують що два перші види пов'язаності найгірші, комунікаційна та послідовна пов'язаності досить добрі і функціональна - найкраща, хоча не завжди досяжна. Бувають випадки, коли комунікаційна пов'язаність - це найкраще чого можна досягти при даних обставинах. Див. такожДжерела
Посилання
|
Portal di Ensiklopedia Dunia