코로나 이슈가 생겨서 페어를 시작하는 첫 날에 일주일 간 온라인으로 전환되었다. 사실 오프라인으로 전환되면서 이런 일이 없을 수는 없다고 생각했어서 갑작스럽지는 않았다.
오랜만에 다시 재택으로 하고 중간에 어린이날로 휴일까지 있어서 휴식한다는 느낌도 났다.
어린이날에 예전 데일리 조 크루들과 영화를 보러갔다. 전반적으로 내가 알던 마블 영화 같지 않은 부분도 있었지만 재밌었다. 마지막으로 영화관에서 본 영화가 엔드게임이니 그냥 거의 3년만에 영화관 간 것 자체가 좋았다.
이번 페어는 알파였다. 첫 날에 재택으로 전환되면서 같이 집에 와서 큰 모니터 쓰면서 편하게 페어했다. 알파는 같이 스터디를 했는데 개인적으로 많은 얘기를 나눌 기회는 없었다. 알파는 스스로 낯가린다고 했지만 평소에 알고 지낸 사람처럼 편하게 페어할 수 있어서 좋았다. 또 마감 기한이 짧았던만큼 난이도가 크게 어렵거나 구현해야 할 것들이 많지는 않았다.
스프링에서 예외처리하는 방법이 여러 가지가 있는데 어떤 장단점이 있는지 루피와 얘기해보는 시간이 있어서 좋았다. 결국 try-catch는 성공 로직과 실패 로직이 섞이게 되어 코드가 지저분해진다. 그러면 남은 선택지는 ExceptionHandler
와 ControllerAdvice
다.
ControllerAdvice
는 여러 컨트롤러에서 발생한 것을 일괄적으로 처리하다보니 어디서 예외가 발생했는지 추적하기 어려워질 수 있다. 그래서 예측 가능한 구체적인 예외는 각각의 컨트롤러에서 ExceptionHandler
메서드를 정의하고, 예측 불가능한 예외는 공통의 RestControllerAdvice
에서 처리할 수 있다.
또 RestAssured 공식 문서를 부분 부분적으로나마 읽어볼 수 있는 시간을 가졌다. 지난 레벨 로그 이후 어떤 기술을 쓸 때 왜?를 스스로 묻기로 했는데 쉽게 습관화가 안된다. 나도 모르게 주어진 테스트코드들로 따라서 썼는데 루피의 리뷰를 받고 공식문서도 제대로 안읽고 쓴게 생각났다.
이번 장은 뭔가 정보의 나열이라 그런지 조금 지루했고 집중이 잘되지 않았다. 나중에 코드짤 때 꼭 적용할 수 있는 것들이 있는지 생각해보자.
레벨 1때 못읽어서 넘어온 이 책을 드디어 끝냈다. 전반적으로 오브젝트 책을 읽고나니 앞부분은 쉽게 읽혔다. 최범균님 책들을 읽다보면 어떤 부분들을 강조하는지 반복해서 드러날 때가 많은데 이 책도 그랬다.
뒤에 디자인 패턴 부분은 읽지 말고 다음에 읽을까하다가 한 챕터만 남은게 찝찝해서 하루에 아이템 하나씩 읽어서 지루하지 않게 끝냈다. 디자인 패턴을 다 다룬 것도 아니고 가볍게 맛만 본거지만 생각보다 어렵지 않다. 디자인 패턴이 결국 실무에서 개발자들의 설계 노력이 패턴화 된 것이라고 하던데, 실제로 어떤 문제 상황 때문에 이런 디자인 패턴이 나왔구나라고 생각하며 보니 재밌었다.
3단계 미션이 꽤 복잡해보인다. 근로도 이제 본격적으로 하고, 주말에 친구도 서울 올라온다고 하니 주말에 시간 낼려면 시간 관리 잘하자.