Unnecessary condition
- 쓸모 없는 조건을 사용하는 것을 의미한다.
- 불필요한
if문이나 검사를 포함하여 코드가 비대해지고 읽기 어렵고 잠재적으로 버그가 발생할 수 있다. - 결과적으로 논리에 아무런 영향을 미치지 않는 코드를 의미한다.
이해
- 아무 목적도 없고 프로그램 기능에 기여하지 않는 코드이기 때문이다.
- 중복 검사, 연결할 수 없는 코드, 항상 참 혹은 거짓인 조건 등이 있다.
중복
- 코드 블록에서 동일한 조건을 여러 번 검사하는 것이다.
연결할 수 없는 코드
- 조건이 결코 참이거나 해서 절대 도달할 수 없는 형태다
항상 참 혹은 거짓
- 컨텍스트 관계없이 결과가 정해진 경우
왜 문제인가?
- 가독성 저하
- 성능 저하
- 버그 위험 증가
- 개발적으로 낭비
리팩토링 과정
- 코드 리뷰
- 코드 테스트
- 조건 단순화
- 죽은 코드 지우기
- 리팩토링 및 최적화
- 검토 및 테스트