토비의 스프링 (5)



객체지향 설계 원칙(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

댓글

Designed by JB FACTORY