Skip to main content

결합도란?

결합도는 모듈 간의 의존성 정도를 나타내며, 하나의 모듈을 수정할 때 다른 모듈의 변경이 필요한 정도로 이해할 수 있습니다. 결합도는 낮을수록 좋습니다. 이는 각 모듈이 서로 독립적으로 기능할 수 있기 때문입니다.

예를 들어, B모듈의 기능을 수정했을 때 A, D, E, F, I 모듈까지 영향을 받는다면, 이는 결합도가 높은 상황을 나타냅니다. 이런 경우에는 유지보수가 매우 복잡해질 수 있습니다. 반면, A모듈이 다른 모듈에 거의 의존하지 않는 경우, 이는 결합도가 낮다고 할 수 있으며, 유지보수가 편리해집니다. 이를 "느슨하게 연결되었다"고 표현하기도 합니다.

결합도가 높을 때의 문제점​

결합도가 높으면, 수정하려는 모듈을 이해하기 위해 연관된 다른 모듈들을 함께 이해해야 합니다. 이는 유지보수의 복잡성을 증가시키고, 모듈의 재사용을 어렵게 만듭니다.

결합도가 낮을 때의 장점​

결합도가 낮은 모듈은 일반적으로 OCP(Open-Closed Principle)의 원칙을 잘 지키는 것으로 간주됩니다. 이 원칙은 모듈이 확장에는 열려 있으나 변경에는 닫혀 있어야 한다는 원칙입니다. 또한, 결합도가 낮은 모듈은 다형성을 잘 지킨 모듈이라 할 수 있습니다, 이는 다양한 상황에서 유연하게 활용될 수 있음을 의미합니다.

결합도를 낮추는 것은 코드의 수정과 유지보수를 용이하게 만들며, 전반적인 시스템의 안정성과 확장성을 높이는 데 기여합니다.