조건 분기와 관련된 코드 개선방법에 대해 알아보자.
if (condition1) {
// do something1
if (condition2) {
// do something2
if (condition3) {
// do something3
}
// do other2
}
// do other3
}
if 중첩 구조
가독성이 나쁜 코드는 팀 전체 개발의 생산성을 저하시킨다. (정말 와닿는 말이다)
early return(조기 리턴)은 조건을 만족하지 않을 경우 곧바로 리턴하는 방법이다.
if (!condition1) {
return;
}
if (!condition2) {
return;
}
if (!condition3) {
return;
}
if (!newCondition4) { // 새로운 요구 사항
return;
}
// do something
// do something new
int value = 0;
if (condition1) {
value = 1;
} else if (condition2) {
value = 2;
} else if (condition3) {
value = 3;
} else {
value = 4;
}
return value;
else 구문도 가독성을 낮추는 원인 중 하나이다.
특히나 중첩된 if 조건문 내부에 else 구문까지 섞이면 가독성이 현저히 낮아진다.
if (condition1) {
return 1;
}
if (condition2) {
return 2;
}
if (condition3) {
return 3;
}
return 4;
else 구문도 early return 을 사용하도록 변경해서 가독성을 높일 수 있다