🎯 메인 프로젝트 3,4주차 일지
😶🌫️ Main Project
- 메인 프로젝트 진행 상황
- 기능 구현 어플리케이션 배포 완료
- 서비스 로직 테스트 코드 작성 및 리팩토링
- 관리 Sheet 제출안 작성
- 기술 발표 자료 및 영상 작성
💡 Project Goal
- 기존 프로젝트에서 구현 하지 못했던 기능 및 기술 사용하여 반영
- 새로운 기술과 라이브러리에 대한 두려움을 극복하고 빠르게 학습하고 구현해 보며 이해
- 중요도에 따라 목표한 구현 기능들 빠짐없이 마무리
- 프로젝트에서 사용한 라이브러리, 기술, 기능 등 모든 스택에 대한 사용 이유 파악
- 복잡한 메인 프로젝트를 진행 하며 내 능력을 확실히 객관화 하고 부족한 점을 찾아 학습
💡Project Current
🎙️ 개발 현황
- 기능 구현 완료 후 테스트 코드
- Mockito & JUnit5를 이용한 단위 테스트 구성
- 일정 관계로 서비스 로직과 컨트롤러 단위 테스트 우선 작성
- 서비스 로직 단위 테스트
- Repository에 의존된 메소드 호출 후 반환하는 메소드는 동작 테스트를 하기 어려움
- 위 메소드 중 로직이 복잡한 경우 복잡한 부분 로직만 따로 유틸 메소드로 추출 하여 테스트 코드 작성
- 테스트가 필요한 Private 메소드는 Public으로 변환 후 테스트 코드 작성
- 컨트롤러 단위 테스트 작성 후 REST Docs 라이브러리를 이용하여 API 명세서 작성
- 프로젝트 기간 종료 후 Repository 단위 테스트 리팩토링 항목에 추가
- AWS 배포 서버 Nginx 적용 및 Reverse Proxy & Load Balancing 적용
- Nginx CORS 이슈가 있었으나 해결 후 프록시와 로드 밸런싱 적용
- CORS 이슈에 관련하여 따로 Project 시리즈에 블로깅 하자.
- AWS 배포 서버 Route 53 도메인 호스팅 및 HTTPS 적용
🔮 3,4차 멘토링
- 3차 멘토링
- 로그인과 JWT 학습 정리 내용 브리핑
- 프로젝트 이슈 질문 (Nginx CORS 이슈)
- 백엔드 개발자 로드맵 레퍼런스 공유
- 면접에 도움되는 레퍼런스 공유
- 어플리캐이션 성능 테스트 등 모니터링 툴 소개
- 4차 멘토링
- 팀원 별 진척 상황 공유
- 간단 과제(테스트 학습 내용) 정리 내용 브리핑
- 질문 사항 공유(실무에서 사용하는 주석, 코드 리뷰, Private 메소드에 대한 테스트 코드 작성)
- 멘토링 & 프로젝트 간단 회고
📑 기술 발표 및 영상 제작
- 과외차이 서비스의 API 서버에서 어떻게 500 Internal Server Error를 관리 했는지에 대한 주제로 발표 자료 작성
- WebHook을 이용하여 Error를 로깅하고 핸들링 할수 있는 예외로 변환하여 응답한 과정을 정리하여 발표
💡TODO
리팩토링과 BackLog로 남겨둔 기능들을 구현하며 기록 할 예정
⚒️ 메인 프로젝트 관련 추후 정리 주제
- Query 부하 테스트 진행 학습 후 리팩토링 과정
- Nginx CORS 문제 해결 & 서버 구축 내용 정리
- 메인 프로젝트에서 Internal Server Error 관리 내용 정리
- JWT 토큰 보안 관리 내용 정리
- BackLog로 남겨진 알림 기능과 실시간 채팅 기능 구현 내용 정리