프로그래밍/DesignPattern

응집도(cohesion)란 ?

모지사바하 2007. 8. 10. 10:59
응집도란 한 클래스 또는 모듈이 특정 목적 또는 역할을 얼마나 일관되게 지원하는지를 나타내는 척도라고 할 수 있다.

어떤 모듈 또는 클래스의 응집도가 높다는 것은 일련의 서로 연관된 기능이 묶여있다는 것을, 응집도가 낮다는 것은 서로 상관 없는 기능들이 묶여있다는 것을 뜻한다.

사실 응집도는 단일 역할 원칙에서만 쓰이는 용어는 아니고, 좀더 광범위한 용도로 쓰이는 용어다. 하지만 그 둘은 서로 밀접하게 연관되어 있다. 이 원칙(단일 역할 원칙)을 잘 따르는 클래스는 두 개 이상의 역할을 맡고 있는 클래스에 비해 응집도가 높고, 관리하기도 더 용이한 편이다.
★이 포스트가 유용하셨다면 javaiyagi블로그를 구독하세요