프로젝트

카카오 테크 캠퍼스 3단계 회고 🐥 카카오 테크 캠퍼스 수료를 한지 좀 되었는데 2023 년이 끝나기 전에 회고를 작성해야겠다 싶어 돌아왔습니다 약 3달 동안 진행 된 프로젝트였고, 팀 내 회고까지 했는데 개인 회고를 하지 못한게 아쉽기도 했구요 카카오 테크 캠퍼스의 꽃, 3단계 회고 시작하겠습니다 회고 방식은 KPT, 즉 Keep(유지 할 점), Problem(문제점),Try(시도 할 점)을 참고했습니다 빠른 의사소통 팀 회고 때 팀원 분들에게 연락이 잘되어 피드백이 빨랐다는 칭찬을 받았습니다 :) 우리 팀은 회의를 대부분 온라인으로 진행하였습니다 타지에 있는 팀원도 있기도하고 7명의 팀원이 오프라인으로 만나는 시간을 조율하기 어려웠기 때문입니다 온라인으로 진행하는 만큼 편한 부분도 있었지만, 어려움..
initializationError Failed 오류 해결 문제 인식 어느 날, 갑자기 initializationError Failed 오류가 특정 테스트에서만 발생했다. 이상하게도 다른 테스트에서는 잘 동작했다. 오류는 테스트 실행 전에 나타났고, 이는 프로젝트 실행 중에 뭔가 문제가 있다는 신호였다. 로그를 자세히 보니, BeanCreationException과 ScriptStatementFailedException 오류가 발견되었다. 일단 JPATest가 문제인 것 같아 @SpringBootTest로 변경하니 일시적으로는 해결되었다. 하지만, SpringBootTest는 맥락을 로딩해야 해서 처리 속도가 느려질 것이라 예상했다 또한, 문제는 해결했지만, 뭉뚝 그려진 해결 방법을 사용한거 같아 더 깊..
크램폴린 IDE - ⚙️ Nginx 문제 해결 2023년은 🐥 카카오 테크 캠퍼스에서 교육을 받았습니다 오늘은 카카오의 클라우드 기반 학습 관리 시스템인 크램폴린 환경에 배포하며 겪은 문제를 나누려고 합니다 Intro. 무슨 일인가 🐥 카카오 테크 캠퍼스 3단계 프로젝트의 주제는 축팅(네 컷 사진을 통해 축제에서 자연스러운 만남을 주선하는 서비스)이었습니다 사진 업로드 기능을 배포 환경에서 테스트하니, ⚙️ Nginx 413 Request Entity Too Large 에러가 발생하였습니다 찾아보니 기본 body size가 1M인 것을 해제하면 되는거라 금방 다시 배포를 하였습니다 하지만, 문제는 해결 되지 않았죠 Nginx 413 에러란? 의미 : 요청 엔티티의 크기가 너무 크다 파일 용량이 너무 커서..
Mockito’s ArgumentCaptor ArgumentCaptor는 Mockito 테스팅 프레임워크의 일부로, 메서드 호출에 사용된 인자를 캡처하는 데 사용됩니다. 이를 통해 해당 인자가 어떤 값으로 설정되었는지 테스트 내에서 확인할 수 있습니다. Step 1: Import ArgumentCaptor Java에서 ArgumentCaptor를 사용하려면 다음과 같이 import 해야합니다. import org.mockito.ArgumentCaptor; Step 2: Create an ArgumentCaptor Instance 캡처할 인자의 타입에 따라 ArgumentCaptor의 인스턴스를 생성합니다. 예를 들어, Long 타입의 인자를 캡처하려면 다음과 같이 작성합니다. ArgumentCaptor ..
카카오 테크 캠퍼스 3단계 3주차 회고 벌써 일주일이 다 지나가고 있습니다 시간이 참 빠릅니다 어느새 가을도 찾아왔구요 처음으로 페어 프로그래밍도 하고, 본격적으로 개발 시작하기기 전 정책이나 프로젝트 세팅을 하는데 주로 시간을 보냈습니다 지식 공유 : Kako Tech Campus 이번주에는 GitHub Action CI 적용하는 방법과 Custom Instruction으로 Commit Convention을 지키는 방법을 공유했습니다 나름 1단계부터 꾸준히 꿀팁을 공유하는 이유는 정말 재밌습니다 제가 머무는 공동체가 성장하는데에 기여하는 느낌이랄까? 이렇게 꿀팁 하나씩 공유하는게 쌓이면 우리 카카오 쿠키즈들 간 긍정적인 자극을 일으킨다 믿습니다 마지막으로 스스로 선한 개발자가 되고 싶었기 때문입니다 이..
Intro. 3단계를 시작하며 카카오 테크 캠퍼스 3단계는 기획부터 개발까지 전반적인 단계를 겪는 시간입니다. 1-2주차 동안에는 8월 말에 치뤄졌던 아이디어톤(🐥 카카오 테크 캠퍼스 아이디어톤 지극히 개인적인 후기)을 고도화하는 단계입니다 너, 테크 리더가 되라 저는 3단계에서 Backend 테크 리더를 맡게 되었습니다. 테크리더의 역할은 기술적/현실적으로 팀 내의 서비스 기술 방향을 재고하는 역할 입니다 개인적으로 테크 리더는 정확히 무슨 역할일까 고민하는 시간을 가졌는데요 제 결론은 우리 BE 팀원들이 온전히 개발에 집중 할 수 있는 환경을 조성하는 사람이 되어야 한다였습니다 개발 캠프인 카카오테크 캠퍼스에서 공부하며 느낀 점은 개발 외적으로 디자인, 매니징 등 다뤄야 할 것들이 많다는 것입니다 온..
Intro. 두근득근 아이디어톤 8월 25~27일까지 카카오 테크 캠퍼스 3단계 아이디어톤을 다녀왔다 1단계는 기초 학습, 2단계는 클론 프로젝트 하면서 기술적으로 파고 들었다면, 3단계에서는 실제 서비스까지 직접 만들어보는거다 아이디어톤에 들어가기 전에 걱정했던 것은 역시나 1-2단계 동안 정 들었던 팀원들과 분리 되어 다시 팀이 짜진다는거다 같이 프로젝트를 하진 않았지만, 밀집 된 일정과 과제들을 낙오 없이 헤쳐나오다보니 왠지 모를 전우애가 생긴거 같다 하지만 걱정과 다르게 너무나 좋은 팀원들을 만났다 흠 잘하자 고범수 나만 잘하면 될 듯 Good Point 고독한 쿠키즈 알고리즘 스터디 운영 새삼스럽게 잘한 점은 고독한 쿠키즈 스터디를 시작한 것이다. 고독한 쿠키즈는 데일리 스크럼을 하던 중 알고리..
1. 통합테스트를 구현하시오. 2. API문서를 구현하시오. (swagger, restdoc, word로 직접 작성, 공책에 적어서 제출 등 모든 방법이 다 가능합니다) 3. 프론트앤드에 입장을 생각해본뒤 어떤 문서를 가장 원할지 생각해본뒤 API문서를 작성하시오. 4. 카카오 클라우드에 배포하시오. 통합 테스트 통합 테스트를 위한 application-test.yml을 사용하라 teardown.SQL(테스트 쿼리)를 DB에 입력하라 테스트는 기본적인 API 요구사항과 실패 테스트까지 진행하라 구현 목록 - Controller에도 예외처리 해줘야하지 않나? User 회원 가입: Post /join 로그인: Post /login` Order 결재: Post /orders/save 주문 조회: Get /or..
과제 수행 조건 1. 장바구니 담기 -> 예외 처리하기 2. 장바구니 수정(주문하기) -> 예외 처리하기 3. 결제하기 기능 구현(장바구니가 꼭 초기화 되어야 함) 4. 주문결과 확인 기능 구현 1. 장바구니 담기 : /carts/add 해결해야 할 문제 동일한 옵션이 들어오면 예외처리 Dirty Checking : cartJPARepository.findByOptionIdAndUserId() 조회 존재하면 장바구니에 수량을 추가하는 업데이트 Controller @PostMapping("/carts/add") public ResponseEntity addCartList(@RequestBody @Valid List requestDTOs, Errors errors, @AuthenticationPrincipa..
과제 목표 카카오 쇼핑 프로젝트 전체 코드를 리팩토링한다 - AOP로 유효성검사 적용하기 - GlobalExceptionHanlder -> 예외 처리하기 - 구현하기 - 장바구니 담기 - 장바구니 수정(주문하기) -> 예외처리하기 - 결재하기 기능 구현 (장바구니가 꼭 초기화 되어야함) - 주문결과 확인 기능 구현 필수 적용 사항 AOP가 적용되었는가? GlobalExceptionHandler가 적용되었는가? 장바구니 담기시 모든 예외가 처리 완료되었는가? 장바구니 수정시 모든 예외가 처리 완료되었는가? 결재하기와 주문결과 확인 코드가 완료되었는가? 1. 장바구니 담기 : /carts/add @Transactional(readOnly = true) @RequiredArgsConstructor @Servi..
berom
'프로젝트' 카테고리의 글 목록