"응집도는 높이고, 결합도는 낮춰라."라는 말을 어디선가 한 번쯤 들어봤을 것이다. 심지어는 각각에 대해서 공부도 해봤을 수도 있다. 단지, 잘 기억나지 않는다. 내가 그렇다. 그런 의미로 결합도와 응집도에 관한 내용을 포스팅하겠다. 모듈 결합도와 응집도에 관한 내용을 설명하기에 앞서 모듈이란 것에 대해 설명을 해야 한다. 모듈은 네이버에서 다음과 같이 정의하고 있다. "프로그램을 기능별로 나눈 논리적인 일부분" 그렇다. 어디까지나 논리적으로 분리된 부분을 말한다. 내가 만든 프로그램을 무지성으로 2개로 쪼갠다고 하면 내 프로그램은 두 개의 모듈로 이루어진 프로그램이 된다. 내가 논리적이라고 우기면 2개의 모듈이 맞다. 하지만 이런 식으로 쪼갠 모듈이 모듈로서 적합하다고 묻느냐면 당당히 아니라고 이야기 ..