이번 글에서는, 4호선톤에서 개발한 내용을 바탕으로 실제 서비스 오픈을 할 때 까지의 개발 내용을 다룰 것이다. 크게 Github, DB 구현, API 리팩토링, 배포에 관련된 내용으로 구성되어 있다. [Github] gitmoji깃허브에서, 다른 사람들의 레파지토리를 보면 커밋 메세지가 예쁘게 되어있는 것을 본 적이 있을 것이다. 사용 예시는 다음과 같다. 확실히 커밋메세지가 깔끔해 보인다. 뿐만 아니라 커밋메세지 맨앞의 이모지들이 다 특별한 의미가 있었다. https://gitmoji.dev/ 여기에 작성된 이모지들의 설명을 바탕으로 해당 커밋이 어떤 내용을 포함하고 있는지 알 수 있었다. https://inpa.tistory.com/entry/GIT-%E2%9A%A1%EF%B8%8F-Gitmoj..
재정비4호선톤 상금 정산이 끝난 후!! 1월 중순에, 팀장님께 실제로 서비스를 배포할 지에 대해 논의를 해보자는 연락을 받았다. 4호선톤 때는 팀장님이 기획/디자인/프론트를 맡으셨고, 두 분이 프론트, 나와 친한 언니가 백엔드를 맡았다. 프론트 팀원 한 분이 개인사정으로 참여하지 못한다고 하셨다. 그리고 다른 프론트 한 분은 기획, 마케팅쪽으로 맡겠다고 하셔서! 최종적으로 팀장님이 프론트, 한 분이 기획/마케팅, 나와 친한 언니가 백엔드를 맡게 되었다. 빠르게 웬투밋으로 회의 일정을 잡고 디스코드로 회의를 했다. 2월 초에 서비스 오픈을 목표로 했기 때문에 기간이 꽤 짧아 긴장을 하고 서비스 개발을 시작하게 되었다. 1차 회의4호선톤에서는 사용자가 칠판을 생성하고 해당 칠판 주소를 잊지 않게 메일 주..
지난 글에 이어서 이번에는 엔티티를 Dto로 변환하여 응답을 내려주는 것을 할 것이다. 01. 코드 작성 다음과 ordersV2 를 작성한다. @GetMapping("/api/v2/simple-orders") public List ordersV2() { List orders = orderRepository.findAllByString(new OrderSearch()); List result = orders.stream() .map(o -> new SimpleOrderDto(o)) // order를 dto로 변환함 .collect(Collectors.toList()); return result; } @Data static class SimpleOrderDto { private Long orderId; pr..
API 개발 고급 에서는 주문 + 배송정보 + 회원을 조회하는 API를 만들 것이다. 지연 로딩 때문에 발생하는 성능 문제를 해결하는 것이 목표이다. Order - Member 는 ManyToOne, Order - Delivery 는 OneToOne 이다. 여기에서는 @XToOne에 대한 성능 최적화를 위한 과정을 진행한다. Order - OrderItem은 OneToMany이며 Collection 형태로, 나중에 진행한다. 00. 컨트롤러 작성 요청을 받아 처리할 컨트롤러를 작성하자. @RestController로 Json 형태로 객체 데이터를 반환함을 명시한다. @RequiredArgsConstructor 로 final 필드인 orderRepository를 주입받는다. @RestController @..