2025-08-27 00:58

Tags: 소프트웨어 공학

응집도

단계이름 (영문)설명
1단계우연적 응집도 (Coincidental)최악. 서로 아무 관련 없는 기능들이 단지 파일 하나에 있다는 이유로 묶여있음.
2단계논리적 응집도 (Logical)유사한 성격의 기능들을 하나로 묶었지만, 호출 시 특정 기능 하나만 선택해서 실행함.
3단계시간적 응집도 (Temporal)특정 시점에 함께 실행되어야 하는 기능들이 묶여있음.
4단계절차적 응집도 (Procedural)기능들이 정해진 순서대로 실행되어야 해서 묶여있음.
5단계통신적 응집도 (Communicational)동일한 입력 데이터를 사용하거나 동일한 출력 데이터를 만들기 위해 묶여있음.
6단계순차적 응집도 (Sequential)한 기능의 출력이 다음 기능의 입력으로 사용되는 순서로 묶여있음.
7단계기능적 응집도 (Functional)이상적. 모듈 내의 모든 기능이 단 하나의 명확한 목적을 수행하기 위해 존재함.
  • 단일 책임 원칙을 지키기 위해 노력하라
  • 이름을 명확하고 구체적으로 지어라
  • 함수와 클래스를 작게 만들어라
  • 코드가 현재 모듈의 핵심 원칙과 직접적으로 관련이 있는지 자문하라.