응집도와 결합도 - high cohesion loose coupling
이 개념에 대해 공부한 적이 있는 사람이라면 일반적으로 응집도는 높게, 결합도는 낮게(high cohesion loose coupling) 로 외우고 있을 것이다. 그렇다면 응집도와 결합도가 무엇이고 왜 "high cohesion loose coupling" 이어야 하는지를 이번 기회에 확실하게 정리 해 보도록 하겠다. 모듈(Module) 응집도와 결합도는 프로그램의 모듈과 모듈간의 관의 관계에 대한 개념이다. 따라서 프로그램에 있어서 모듈의 개념을 이해하는 것이 먼저이다. 모듈은 프로그램에서 하나의 기능을 수행하는 단위이다. 나는 주로 프로그래밍 관련 용어들을 레고에 빗대어 이해하곤 한다. 프로그램 코드 한 줄 한 줄이 레고 블럭 하나라면, 모듈은 그 블럭들을 조립하여 만든 하나의 '기능'을 수행하는 ..