Зацепление (программирование)

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая Евгений Мирошниченко (обсуждение | вклад) в 08:21, 30 ноября 2014 (Типы зацепления). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску

Зацепление, или сцепление (англ. coupling) — способ и степень взаимозависимости между программными модулями[1]; сила взаимосвязей между модулями[2]; мера того, насколько связаны подпрограммы или модули[1].

Зацепление обычно противопоставляется связности (англ. cohesion). Слабое зацепление часто сочетается с сильной связностью и наоборот. Метрика качества ПО связанности и связности была придумана Ларри Константином, изначальным разработчиком структурного проектирования[3], который был также ранним сторонником таких концепций (см. также SSADM). Слабое зацепление часто является признаком хорошо структурированной компьютерной системы и признаком хорошего проекта, и, когда она комбинируется с сильной связностью, соответствует общим показателям хорошей читаемости и сопровождаемости.

Типы зацепления

Концептуальная модель зацепления

Типы зацепления, согласно стандарту ISO/IEC/IEEE 24765-2010, включают:

  • зацепление по общей области (common-environment coupling);
  • зацепление по содержимому (content coupling);
  • зацепление по управлению (control coupling);
  • зацепление по данным (data coupling);
  • смешанное зацепление (hybrid coupling) и
  • патологическое зацепление (pathological coupling)[1].

См. также

Ссылки

Примечания

  1. 1 2 3 ISO/IEC/IEEE 24765-2010 Systems and software engineering — Vocabulary
  2. ISO/IEC TR 19759:2005, Software Engineering — Guide to the Software Engineering Body of Knowledge (SWEBOK)
  3. W. Stevens, G. Myers, L. Constantine, «Structured Design», IBM Systems Journal, 13 (2), 115—139, 1974.