Front-End

응집도 - 결합도 본문

개인 공부

응집도 - 결합도

jeongsso 2024. 3. 19. 07:45

좋은 설계란 ?
" 높은 응집도와 낮은 결합도 " 를 가지도록 구성하게 배치하는 것이라고 한다.

 

'모듈' 너무 많이 들어본 단어다.

모듈이란, 크기와 상관없이 클래스나 패키지, 라이브러리와 같이 프로그램을 구성하는 임의의 요소를 의미한다.

 

참고로 클린 소프트웨어 저자인 로버트 마틴에 따르면 모든 모듈은 제대로 실행되어야하고, 변경이 용이해야하고, 이해하기 쉬워야한다고 한다.

 

 

 

우리가 알아봐야할 응집도란,

모듈에 포함된 내부 요소들이 하나의 책임/목적을 위해 연결되어있는 연관된 정도다.

하나의 모듈에 하나의 책임/목적을 위해 연결된 기능들이 잘모여있고, 긴밀하게 연결되어 협력하고있다면

수정하기 쉬워집니다.

 

 

결합도는

다른 모듈과의 의존성 정도입니다.

모듈 수정을 위해 다른 모듈의 변경을 요구하는 정도인데,

낮을 수록 하나의 기능을 수정하기위해 다른 모듈들까지 손보지않아도 되서 유지보수가 편합니다.

 

 

의존성이 높다는 말은 

a를 사용하는 컴포넌트가 A, B라면 
A에서 사용하는 a를 고치고싶어서 a를 수정하게되면
고치지않아도되는 B컴포넌트도 같이 덩달아 수정되기때문에 불필요한 작업을 하게되는 경우가있다.

'개인 공부' 카테고리의 다른 글

인증 - 인가  (1) 2024.03.19
컴퓨터적 사고  (1) 2024.03.18
Comments