개요
Rider 사용하며 종종 if~else문 관련하여 리팩토링을 해주는 경우가 있었다.
최근 이 기법의 이름이 있었다는 사실을 알게되었는데,, 이름하여 "Guard Clause(가드 절)"
본문
if(!isDead)
{
Look();
if(!isJumping)
{
Move();
}
}
위와 같이 중첩 조건문으로 이루어진 코드가 있을 수 있다.
이런 식으로 작성하다 보면 들여 쓰기의 많아지고 깊이가 깊어져 가독성이 떨어질 수밖에 없다.
여기에 else문까지 추가된다면 사이를 건너 뛰며 읽어야 하는 노력까지 더해진다.
이럴 때 필요한게 바로 Guard Clause이다.
if(isDead) return;
Look();
if(isJumping) return;
Move();
조건을 반대로 생각해서 반환을 해주는 것이다.
이제 들여쓰기도 사라지고 코드의 가독성이 올라가게 되었다!
결론
최근에 자주 애용하고 있는데, 코드가 전반적으로 깔끔해졌다.
RIder를 사용하며 참 여러모로 배우는 것 같다.
멘토가 따로 없네
참고
728x90