코드 정리🧹: 피라미드 함수 정리하기

개발할 때 문어발처럼 뻗어가는 케이스와 예외 사항을 마주하다 보면 겪을 수 있는 상황에 관해서 이야기하려고 합니다. 여기에 어떤 코드가 있습니다. ``` ...어떤 코드… ``` 이 코드는 한동안 잘 서비스가 되다가 기획이 바뀌어 특정 조건에만 실행하게 되었습니다. 개발자는 “이 정도는 껌이지!”를 외치며 if 문을 하나 추가하여 구현합니다. ``` if 조건 { ...어떤 코드… } ``` 기획서에 나온 대로 완벽하게 수정이 됐다고 생각했지만, 코드가 실행되면 안 되는 하나의 케이스를 발견해서 급하게 조건을 하나 추가합니다. ``` if 조건 { if 다른 조건이 아닌 { ...어떤 코드… } } ``` 이러한 함수의 피라미드식 조건은 길을 잃기 쉽습니다. 이런 코드를 다음과 같이 정리해야 합니다. ``` if 조건 아님 { return } if 다른 조건 { return } ...일부 코드… ``` 이렇게 하면 더 읽기 쉽습니다. guard 절을 사용하여 조건을 간결하고 명확하게 만들 수 있습니다. guard 절이 여러 개가 나열될 때 조건 역시 가독성이 떨어질 수 있기 때문에 조건 자체를 상태로 변경해서 사용한다면 더 나은 가독성을 가질 수 있습니다. 하지만, 하나의 동작에 guard 절이 과도하게 사용된다면 이것은 어쩌면 더 큰 문제입니다. 7~8개의 가드 절이 있는 동작이라면 동작의 복잡성을 분할하는 해야 한다는 신호가 될 것입니다. 당장 이런 개발이 힘들다면 일단은 가드 절을 많이 사용하고 이후에 책임에 맞게 분리하는 것도 좋은 연습이 될 것 같습니다.😀

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2023년 3월 2일 오후 9:37

 • 

저장 141조회 9,007

댓글 6