221124 백엔드 리팩터링

샨티(shanti)·2022년 11월 24일
0

하루를 마무리 하기 전, 오늘 있었던 일들을 잔잔히 되짚어봅니다.
성공과 실패의 모든 요소에서 '배울 점'을 찾아내어 기록하고,
더 성장하는 내일의 나를 위해 'action plan'을 세웁니다.

무슨 귀신에 홀렸는지.
application layer에 위치한 service들의 이름 앞에 단순히 'Get'을 붙이면 된다는 생각에 모든 service들을 getOOOService로 통일했었는데 크게 잘못하고 있음을 깨달았다.
간혹 같은 특강을 들어도 나 혼자 이렇게나 오해를 하고 헛짓을 하고 있었음을 알게되면 현타도 이런 현타가...

어쨌든, 이미 저지른 잘못을 가만 둘 수 없으니 빡시게 회개하면서 얼른 잘못을 수정해나갔다.
하나의 service가 하나의 기능을 담당할 수 있도록! 더 늦지 않게 발견해서 다행이고 이 참에 미비하다고 느껴졌던 테스트들도 손볼 수 있었다.

어제, 엊그제 겪었던 orElse(), orElseThrow() 관련 문제도 테스트를 잘 작성했다면 그렇게까지 겪을 문제였나? 싶은 생각도 들었다.


리팩터링을 하기 전 오전 시간에는 유튜브 API 사용을 해보고자 공식 문서를 보고 레퍼런스들을 살펴 보았는데 결론적으론 내가 해결하지 못한 문제로 남게 되었다.

youtube 홈페이지의 예시는 오래전 거라 deprecated 된 라이브러리를 활용한 코드로 이루어져 있었고, 다른 블로그들을 한참 살펴보았는데 내 상황에 맞아떨어지는 것을 찾을 수가 없었다.

예전에 카카오 맵을 가져올 때도 그렇고, 이번에 서드파티 로그인을 구현하면서도 느꼈던 답답함을 오늘도 동일하게 느꼈다.

손에 든 무기가 많지 않으니 조금만 패턴이 변경되거나 내가 사용하는 언어와 관련된 레퍼런스가 없을 때에 턱. 하니 막힌다.
우선 로지님께 메시지를 남겨놓긴 했는데.. 약간 기운이 빠지는게 사실임..ㅠㅎ

어쨌든!! 손 놓고 있을 수는 없으니.. 오늘 남은 하루는 프론트쪽에서 추가로 구현해주어야 할 access token 관련 기능 등을 살펴서 보완해줄 예정이다.

오늘 아주 간단한 내용이지만 새롭게 알게 된 점도 기록한다.
유튜브에서 제공하는 예시 코드를 적용하기 위해 build.gralde에 몇 가지 추가 설정이 필요했는데, 그대로 갖다 썼는데 뭔가 문제가 있다며 에러를 내뱉고 있었다.
알고보니 compile이라는 단어 때문에 발생한 일이었는데, deprecated된 사항이라 이미 우리가 익숙하게 보아 왔던 implementation을 사용해주어야 한다.

스프링 프로젝트 초기 설정 시 주입된 dependencies들. 맨 앞에 implementation이 붙어있음을 알 수 있다.

외부요소 하나를 가져다 쓰는 것이 아직은 쉽지 않지만, 그래도 여러가지 연장을 갖춘 사람이 되어 다양한 상황에 적절히 대응하고 싶다.
이번 프로젝트가 종료되고 나면 서버 사이드에서 외부 API와 통신하는 법, 활용 도구들에 대해 별도로 공부해야겠다. 연장을 다양하게 갖추자. 아 답답해~ ㅠㅠ.

profile
가벼운 사진, 그렇지 못한 글

0개의 댓글