220805 TIL 무조건은 없다

쉽지 않았던 하루 

오늘 나를 괴롭혔던 문제는 과제를 리팩터링 하던 도중 일어났다.

관심사의 분리를 위해 기존에 다른 클래스에서 진행하던 조건 검사를 새로운 클래스를 만들어서 그냥 옮기기만 했는데

잘 되던 기능이 갑자기 작동하지 않는 거였다.

 

조건 검사하는 코드를 고친 게 아닌데 안돼서 뭐가 문제인지도 모르는 상황에 빠졌다. 

그래서 뭐가 잘못됐는지 찾기 위해 코드를 처음부터 보면서 문제를 찾아보는데 아무리 봐도 작동되야하는데 안돼서 멘붕에 빠졌었다.

문제 상황은 회원가입 시 입력 정보가 하나라도 빠지면 입력되지 않은 정보가 있다는 페이지가 나와야 하는데 비밀번호를 입력하지 않으면 서버가 죽는 상황이다.

근데 나를 멘붕에 빠지게 만들었던 건 이름, 아이디, 이메일, 비밀번호 재확인 이 4개는 입력 안 해도 입력되지 않은 정보가 있다는 페이지가 잘 나오는 거였다....

분명 조건식에는 5개 중 하나라도 빠지면 실패 페이지가 나오도록 해놨는데 도대체 왜 비밀번호가 빠지면 서버가 죽는지 알 수 없었다.

 

그러 더 중 동료분들이 나서서 문제 해결에 도움을 주셨는데 조건식은 문제가 없다는 것을 확인했다.

문제가 있었던 부분은 조건식의 순서였다.

순서만 바꿔주니 잘 작동하는 것을 볼 수 있었다.. 그때 느낀 허무함은 정말 말로 표현할 수가 없다... 다 꼼꼼하지 못한 내 탓이지...

 

혼자 문제를 찾을 때는 조건식이 잘못됐다고 생각해서 조건식 부분만 계속 봤는데 알고 보니 조건식의 순서 문제였다는 것을 알게 됐을 때는 정말 허무했다. 조건 검사하는 순서는 상관없을 줄 알았는데 영향을 미치고 있었다. 

 

나는 문제가 발생했을 때 발생한 문제를 해결할 때나 오류를 찾을 때 꼼꼼하지 못하다는 것을 알게 되었다...

하나하나씩 다 살펴봐야 했는데 조건식의 순서는 무조건 아니야! 하는 생각 때문에 문제를 찾지 못했다. 

내가 짠 코드에서 무조건은 없다는 걸 알아야 했는데... 

 

앞으로는 문제가 생겨서 막히면 처음부터 끝까지 논리 순서대로 하나씩 다 살펴보자..