이번주차는 API 설계에 집중하는 것이 과제였다. 배달앱 API로 음식점에 음식을 등록하고, 메뉴를 조회하고, 주문도 할 수 있게 하는 API를 설게해야했다.
순한맛, 매운맛, 극강의 매운맛까지 난이도가 다양했고 순한맛은 필수 제출 그 외에는 챌린지로 내줬었다. 화요일에 순한 맛을 끝냈지만 당장 다음 주차에 프론트와의 첫 협업이 있을 예정이라 챌린지는 미루고 개인 공부로 이틀은 시간을 보냈던 것 같다.
회고 쓸 것을 생각 못하고 있어서 기록을 따로 해두지 못했는데,
가장 어렵고 막혔던 것은 JPA 연관관계 설정하는 부분이었다.
@ManyToOne / @OneToMany / @ManyToMany 를 각각 어떤 테이블에 어떻게 써먹어야될지 고민을 많이했던 것 같다.
덧붙여 과제에서는 이미 테스트 코드가 주어져있던 상태라 ordrs, orde_item 부분에서 Dto를 테스트 코드를 보며 나누다보니 각각의 dto마다 어떤 역할로 쓰였는지 파악하기가 힘들었었다. 테스트 코드까지 짜라고 했다면 정말 너무 벅찬 과제였을 것 같아서 테스트 코드가 주어진게 어디냐 라고 생각했었는데, 내가 짠 코드가 아니다보니 전체적인 흐름 파악하는데 시간이 좀 걸렸던 것 같다.
매번 회고 때마다 느끼는 것이지만 프로젝트 시작전 API, DB 설계가 정말 중요하다는 것을 매번 느낀다. 그런데도 막상 과제를 받으면 깊은 고민없이 바로 프로젝트에 띄어들게 되서 반성을 많이 했다...
Builder Pattern
JPA 연관관계