Skip to main content

결합도란?

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

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

결합도가 높을 때의 문제점

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

결합도가 낮을 때의 장점

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

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