Связность (программирование)


Связность, или прочность, а также сплоченность (англ. cohesion, module strength), — мера силы взаимосвязанности элементов внутри модуля[1]; способ и степень, в которой задачи, выполняемые некоторым программным модулем, связаны друг с другом[1].

Макконнелл объясняет понятие связности на примере класса (как частного случая модуля): «связность характеризует то, насколько хорошо все методы класса или все фрагменты метода соответствуют главной цели, — иначе говоря, насколько сфокусирован класс»[2].

Связность обычно противопоставляется зацеплению. Слабое зацепление является признаком хорошо структурированной и хорошо спроектированной системы, и, когда она комбинируется с сильной связностью, соответствует общим показателям хорошей читаемости и сопровождаемости.

В стандарте ISO/IEC/IEEE 24765[1] и современной литературе[2][3][4] предлагается рассматривать следующие типы связности: