토비의 스프링 (5)
- SPRING
- 2019. 1. 2. 23:13
객체지향 설계 원칙(SOLID)
객체지향 기술은 어느 날 한 번에 만들어진 것이 아니다.
오랜시간에 걸쳐 점진적으로 발전 해온 기술이다.
때문에 객체지향 기술을 받아들이고 적용하는 관점과
기법에 차이가 조금씩 있다.
객체지향 설계 원칙은 객체지향의 특징을
잘 살릴 수 있는 설계의 특징을 말한다.
예외는 있겠지만 대부분의 상황에 잘 들어맞는
가이드라인과 같은 것이다.
디자인 패턴은 특별한 상황에서 발생하는 문제에 대한 좀 더 구체적인
솔루션이라고 한다면 객체지향 설계 원칙은 좀 더 일반적인
상황에서 적용 가능한 설계 기준이라고 볼 수 있다.
높은 응집도와 낮은 결합도
응집도가 높다는 것은 하나의 모듈, 클래스가 하나의
책임 또는 관심사에만 집중되어 있다는 것.
높은 응집도
응집도가 높다는 것은 변화가 일어날 때 해당 모듈에서
변하는 부분이 크다는 것으로 설명할 수 있다.
즉, 변경이 일어날 때 모듈의 많은 부분이
함께 바뀐다면 응집도가 높다고 말할 수 있다.
낮은 결합도
낮은 결합도는 높은 응집도보다 더 민감한 원칙이다.
느슨한 연결은 관계를 유지하는데 꼭 필요한 최소한의 방법만 간접적인
형태로 제공하고 나머지는 서로 독립적이고 알 필요도 없게 만들어 주는것.
결합도가 낮아지면 변화에 대응하는 속도가 빨라지고,
구성이 깔끔해진다. 또한 확장성도 좋아진다.
낮은 결합도란 하나의 변경이 발생할 때 마치 파문이 이는 것처럼
여타 모듈과 객체로 변경에 대한 요구가 전파되지 않는 상태를 말한다.
'SPRING' 카테고리의 다른 글
토비의 스프링 (7) (0) | 2019.01.21 |
---|---|
토비의 스프링 (6) (0) | 2019.01.08 |
토비의 스프링 (4) (0) | 2019.01.02 |
토비의 스프링 (3) (0) | 2018.12.24 |
토비의 스프링 (2) (0) | 2018.12.19 |