Minimize Cyclmatic Complextity

이정훈·2024년 7월 31일

Cyclomatic Complexity

Cyclomatic complexity는 프로그램의 제어 흐름을 통해 독립적인 경로의 수를 결정해서 측정되는 프로그램의 구조상 복잡도입니다.
이렇게 말하면 어렵게 느껴지는데 단순히 코드의 제어 흐름에서 분기하는 부분의 개수를 세면 됩니다.
높은 Cyclomatic complexity는 테스하기 어렵게 그리고 이해하기 어렵게 또 유지보수하기 어렵게 만듭니다.
그렇기 때문에 가능한 Cyclomatic Complexity를 줄이는 것이 좋습니다.

Cyclomatic Complexity를 줄이는 방법

  • 복잡한 함수를 특정 작업만 하는 작고 간단한 함수들로 분해
  • if-else나 loop문 같은 제어 구조를 일관성있고 예측 가능한 방법으로 사용
  • functional programming의 개념과 기술을 사용
  • 디자인 패턴을 이용
  • 정기적으로 코드를 리뷰하고 리팩토링하기
  • 정적 코드 분석 도구를 통해 Cyclomatic Complexity확인하기
profile
기록으로 흔적을 남깁니다.

0개의 댓글