일주일간의 너무 짧은 기본 프로젝트가 끝났다ㅠㅠ
겪었던 트러블 슈팅과 더불어, 그동안 느꼈던 어려움이나 개선할 점에 대해 남겨보고자 한다.
🤔 문제 상황
Spring Boot 프로젝트에서 @RestControllerAdvice를 활용한 GlobalExceptionHandler를 사용 중이었음.
@Controller, @RestController에서 발생하는 예외는 잘 처리되지만,
로그인 필터(Filter) 내에서 발생한 예외는 GlobalExceptionHandler에서 처리되지 않고 그대로 터져버림.
💡 해결 방법
Filter 내부에서 예외를 직접 핸들링하고, 예외 상황에 맞는 JSON 응답을 직접 작성하는 방식으로 해결.
문제 상황
<<<<<<< HEAD
기존 dev 브랜치 코드
=======
feature/login 브랜치에서 수정한 코드
>>>>>>> feature/login
이 상태에서는 Git이 어떤 코드를 선택해야 할지 판단할 수 없어서 사용자가 직접 선택/수정해야 함.
충돌 발생 후 IntelliJ 알림창 확인 상단에 "Merge Conflicts" 팝업 또는 Version Control 탭에서 충돌 파일 표시됨.
1. 팀원들과의 소통
: 이번 프로젝트에서 소통이 잘됐던 것 같다
아침 저녁으로 스크럼을 진행해서 서로의 진행상황을 잘 공유할 수 있었고 어려움도 나눌 수 있었다
2. 매일 꼭 이룰 수 있는 작은 목표를 세우는 것
: 작은 목표를 달성하고 나면, 그 나머지 목표들도 가열차게 진행할 수 있었다. 다음 프로젝트에서도 꼭 작은 목표를 설계해야겠다
1. JWT를 사용해서 사용자 정보를 다루자!
2. Task를 나눠서 작업해보자
: 팀원끼리 할 일을 서로 쉽게 공유하고, 일을 더 효율적으로 진행하기 위해 공유된 페이지에서 Task를 작성한 후 프로젝트에 들어갔다면 더 효율적인 프로젝트가 됐을 것 같아 아쉬웠다., 다음엔 꼭 테스크를 정리할것!
3. 내가 선생님인 것처럼 공부하자
: 팀원에게 내가 구현한 기술에 대해 설명할 때, 많이 배우고 실력이 느는 것을 체감했다. 다음에 공부할때도 누군가에게 설명한다고 생각하고 공부하자!
1. session으로만 구현하고 JWT를 사용해보지 못한 것
: 아직 세션을 다루는 것도 어렵다고 생각해서 세션만을 사용해서 구현했다.ㅜㅜ
2. 팀원 간의 일 분배가 어려웠던 점
: 팀원마다 이해한 정도나 속도가 다르니 할 일을 분배하는데에 있어서 어려움이 있었다