[Oop] Сцепление и сцепление


Answers

Связь. Мера того, насколько модуль (пакет, класс, метод) опирается на другие модули. Желательно уменьшить сцепление или уменьшить количество, которое данный модуль опирается на другие модули системы.

Сплоченность - мера того, насколько тесно связаны члены (классы, методы, функциональные возможности внутри метода) модуля с другими членами одного и того же модуля. Желательно увеличить сцепление, поскольку это указывает на то, что модуль имеет очень специфическую задачу и выполняет только эту задачу.

Question

Я пытаюсь свести понятия сцепления и сплоченности к краткому определению. Может ли кто-нибудь дать мне короткое и понятное объяснение (короче определений в Википедии здесь и здесь )? Как они взаимодействуют?

Благодарю.

У кого-нибудь есть хороший, короткий пример?




Высокое сцепление в модулях и низкое сцепление между модулями часто рассматриваются как связанные с высоким качеством в языках программирования OO.

Например, код внутри каждого класса Java должен иметь высокую внутреннюю связность, но быть как можно более слабо связан с кодом в других классах Java.

Связывание относится к тому, как связаны два класса / модулей и насколько они зависимы друг от друга. Быть низкой связью означает, что изменение чего-то крупного в одном классе не должно влиять на другое. Высокая связь сделает ваш код сложным для внесения изменений, а также для его поддержания, поскольку классы тесно связаны друг с другом, что может привести к изменению всей системы.

Сплоченность относится к тому, что будет делать класс (или модуль). Низкая сплоченность означает, что класс выполняет множество действий и не фокусируется на том, что он должен делать. Тогда высокая сплоченность означает, что класс сосредоточен на том, что он должен делать, т. Е. Только методах, связанных с намерением класса.

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




Быстрый и грязный способ измерения связи - это измерение ваших import (или подобных) заявлений.




Связь означает зависимость от других. Когезия означает полноту с ней.