본문 바로가기

응집도2

리팩토링으로 클래스 응집도 높이기 객체지향 코드를 짜기 위해 노력해 본 사람이라면, 좋은 객체지향적 코드를 짜기 위해서는 결합도는 낮추고 응집도를 높이라는 말을 들어보셨을 것이다. 혹시 결합도, 응집도가 무엇인지 잘 모르는 사람은 아래의 링크를 통해 공부하고 오자. https://devkingdom.tistory.com/300 결합도와 응집도 이야기 OOP를 다루는 개발자라면 혹은 컴퓨터 공학을 전공하는 사람이라면 누구나 이런 얘기를 들어본 적이 있을 것이다. "결합도는 낮추고, 응집도는 높여야 유지보수하기 쉬운 좋은 프로그램이 된다" devkingdom.tistory.com 클래스가 아래와 같은 이유로 분리의 필요성을 느낀다면 이는 클래스가 응집도가 낮은 것이니 클래스를 분리해야한다. 1. 변경의 이유를 기준으로 클래스를 분리 클래스가.. 2023. 8. 23.
결합도와 응집도 이야기 OOP를 다루는 개발자라면 혹은 컴퓨터 공학을 전공하는 사람이라면 누구나 이런 얘기를 들어본 적이 있을 것이다. "결합도는 낮추고, 응집도는 높여야 유지보수하기 쉬운 좋은 프로그램이 된다" 개발자로 산지 거의 5년이라는 시간이 지났지만, 저 말을 제대로 이해하고 있는지도 의문이었다. 그래도 최근에 '클린코드' 라는 책을 정독하면서 나름대로 잘 이해하게 된 것 같아, 내용을 좀 정리해보려고한다. 결합도 (Coupling) 결합도는 다른 모듈간의 의존도를 의미한다. 아래그림을 보자. 파란색 사각형이 프로그램의 모듈이라고 생각해보자. 보통 프로그램은 하나의 모듈이 아닌 여러개의 모듈로 이루어져있다. 결합도는 각각의 모듈간의 영향을 주는 즉 의존도를 의미한다. 응집도 (Cohesion) 응집도는 하나의 모듈 내.. 2022. 1. 9.