목록TIL (40)
도도한 개발자
🐈⬛ 오늘 공부한 내용 사람이 이틀동안 두 시간만 자고 버틸 수가 있구나 flyway 🐾 느낀 점 & 배운 점 새로운 개념 배우기 전에 지레 겁먹는 습관을 버려야겠다. flyway도 사실 우리 프로젝트에 필요한 기술이었는데 그냥 말만 들어도 어려울 것 같고 그런데 알긴 알아야 할 것 같고 그래서 걱정만 하다가 오늘 박스터가 정리한 글을 읽고 두려움이 사라졌다. 덕분에 여러 블로그 보면서 flyway가 뭔지 어떻게 사용하는지 알게 됐다. 💭 감정회고 어제 두시에 기능 PR 날리고 바로 자려고 했는데 살짝 몸살이 와서 잠이 안왔다. 결국 두 시간만 자고 일어나서 나왔는데 아 이제 한계.. 오늘은 약속이 있어서 공부를 거의 못했다. 공부를 안하면 죄책감이 드는 날이 오다니.ㅋㅋ 내일 열심히 하면 되지.
🐈⬛ 오늘 공부한 내용 답글 기능 구현 리팩터링 🐾 느낀 점 & 배운 점 정규화...데이터 정합성... 💭 감정회고 저는 감정이 없습니다..
🐈⬛ 오늘 공부한 내용 우리 카페인 팀 블로그 읽기 🐾 느낀 점 & 배운 점 도커, Github Action, self-hosted, flyway, 트랜잭션 등 모르는 것 투성이다. 근데 우리 프로젝트는 이것들을 도입했고 누군가 나에게 질문 했을 때 명확하게 답변을 못하는 상태다. 그게 너무 싫었고 또 알고싶기도 해서 우선은 우리 팀 블로그부터 차근차근 읽기로 했다. 당장 알고리즘 문제 하나 더 푸는 것보다 나에겐 우리 프로젝트에서 뭘 하고 있는지 파악하고 어떤 개선이 필요한지를 깨닫는 게 더 중요하다고 생각했기 때문이다. 💭 감정회고 저번에 사겼던 일본인 친구랑 오늘 만나서 놀았다. 과자를 잔뜩 사왔는데 하나하나 손편지를 써줘서 감동했댜..★ 한 여섯시간을 일본어로만 얘기하니까 취할 겨를이 없었다. ..
🐈⬛ 오늘 공부한 내용 JwtException Reflection @PageableDefault()의 default size 부모클래스 필드까지 build하기 -> super()와 @Builder Fixture 바꾸지 않기 🐾 느낀 점 & 배운 점 우리는 프로젝트에 일찍이 JWT를 도입했다. 토큰이 들어오면 디스패처 서블릿으로 가기 전 필터(Filter)에서 해당 토큰이 유효한 지 아닌 지 걸러준다. 필터는 인증 확인과 토큰의 유효성을 동시에 검증했다. 그런데 토큰을 검증하는 부분이 인증에 있는 것보단 토큰을 관리하는 클래스에서 하는 것이 좋을 것 같다고 해서 로직을 수정했다. 토큰에서 claims를 가져오는 과정에서 발생할 수 있는 예외를 다음과 같이 잡아줬다. public Long extract(S..
🐈⬛ 오늘 공부한 내용 인수테스트 쌈빡하게 하기 Page 의 isLast() ok와 noContent 🐾 느낀 점 & 배운 점 어제 하루종일 리팩터링하고 새벽까지 하다가 중간에 팀원들 코드가 머지된걸 발견. 오늘 아침에 그거 rebase 해보려고 이것 저것 눌러보고 push 해보니까 충돌파티. 새로운 마음으로 다시 시작하고픈 마음이 턱끝까지 차올라 PR 날리고 브랜치 날림. (그래도 기존의 리뷰는 거의 다 반영한..것 같기도?) 암튼 날 힘들게 하던 컨트롤러 테스트와 RestDocs, 인수테스트를 깔끔하게 잘(?) 짜고 PR. 내 코드를 리뷰하는데서 기쁨을 느끼는 박스터에게 또.. 많은 리뷰를 받았다. 좋긴한데 저 답글 기능 해야되거든요.. 그래도 많이 배워서 좋다. 리뷰를 조회할 때 다음 페이지가 ..
🐈⬛ 오늘 공부한 내용 리뷰 댓글 리팩터링 + ignoringFieldsOfTypes() 🐾 느낀 점 & 배운 점 오늘 계획 한 것 : 댓글 기능 머지하고 답글 기능 구현하기, 쿠팡 이력서 작성하기, 블로그 쓰기 오늘 한 것 : 댓글 기능 리팩터링하기 + 생각해보니까 배운 게 있긴 하네. ignoringFieldsOfTypes() 얘때문에도 한시간 쏟았는데 박스터한테 물어보니까 1분만에 해결. 객체의 생성일과 수정일이 LocalDateTime으로 되어 있는데 Fixture와 DB에서 꺼내온 객체에서 날짜를 비교하려니 맞지 않았다. ignoringFields()로 점도 찍어보고 와일드카드도 써보고 배열도 써보고 다 했는데 저거 하나로 해결이 됐다니. 여기서 좀 머리를 망치로 맞은 것 같았다. 💭 감정회고..
🐈⬛ 오늘 공부한 내용 [스프링 핵심 원리] 컴포넌트 스캔 리뷰 CRUD 기능 구현 @AutoConfigureRestDocs RestDocs에 울다 웃어서 엉덩이에 뿔나기 🐾 느낀 점 & 배운 점 Configuration 클래스에 @Configuration 어노테이션 붙이면 스프링이 해당 클래스를 상속받아서 자체적으로 CGLIB클래스를 만드는데 이 친구가 바이트 코드를 조작해서 싱글톤을 보장한다. 강의를 들으면서 스프링을 왜 쓰는지, 어떤 불편함 때문에 스프링이 등장했는지를 납득하고 있다. 리뷰 기능 중 댓글의 CRUD 기능을 구현했다. 레포지토리 테스트와 서비스 테스트는 익숙하니까 빨리빨리 작성했는데 컨트롤러 테스트가 내 발목을 잡았다. 우선 mockMvc 테스트 하는 법을 잘 모를 뿐더러 기존에 팀..
🐈⬛ 오늘 공부한 내용 카페인 리뷰 기능 API 명세 [스프링 핵심 원리] 싱글톤 컨테이너 🐾 느낀 점 & 배운 점 이번 리뷰 기능은 가브리엘과 함께 만든다. 둘이서 API 명세하니까 빨리빨리 결정하고 좋다. 초반과 달리 우리의 기능에 많이 익숙해져있고 서로 개발에 (약간의) 자신감이 붙어서 재밌게 회의한 것 같다. 그런데 그만큼 놓치고 있는 부분이 있을 수 있어서 걱정이지만 그것을 고쳐나가는 것 또한 개발의 묘미...니까. 왔다갔다 하는 시간엔 스프링 공부하고 여기와선 JPA 공부하고 알차다 알차. 💭 감정회고 어...오늘 저녁 삼겹살 맛있겠다.