Связность и связанность
Связность — это сгруппированность функциональности таким образом, чтобы иметь возможность вносить изменения в как можно меньшем количестве мест.
Связанность — это степень взаимодействия между модулями. Когда между модулями наблюдается слабая связанность, изменения в одном модуле не требуют изменений в другом.
Связанность и связность тесно переплетены. Связность применима к отношениям между функциональными объектами внутри границ модуля. Связанность представляет отношения между объектами через границы модулей.
Более развернуто:
В объектно-ориентированном программировании (ООП) под связанностью понимается степень прямой осведомленности одного элемента о другом. Другими словами, как часто изменения в классе A приводят к соответствующим изменениям в классе B.
В ООП связность определяет то, как спроектирован отдельный класс. Она гарантирует, что класс разработан с единой и четко сформулированной целью. Другими словами, если все составляющие класса похожи по многим аспектам, то он обладает сильной связностью.
Еще вариант:
Зацепление (связанность) — степень взаимозависимости разных модулей. Чем выше зацепление, тем более хрупкой получается система, и тем сложнее вносить изменения.
Связность — степень, в которой задачи некоторого модуля, связаны друг с другом. Чем выше связность, тем строже модули следуют SRP, тем выше сфокусирован модуль на конкретной задаче.
Recommended Posts
Запахи кода из книги Мартина «Чистый код»
21.01.2019