//////
Search
😄

[내용 작성 가이드라인] 1주차 회고록

점수(5점 만점)
5
기간
2023/03/22 → 2023/03/26
스티커
주차
1주차
작성 방법
이번주 목표 작성 방법
이번 주 꼭 해내고 싶은 공부 목표를 설정해주세요
목표는 구체적으로 작성할 수록 좋아요
한 주를 마무리 할 때 이번주 목표를 얼마나 이행했는지 체크리스트로 확인해보세요
본격적으로 회고 작성하기!
회고는 4L(Liked, Lacked, Learned, Longed for)를 기준으로 작성해보세요
Liked (좋았던 점)
Lacked (아쉬웠던 점)
Learned (배운 점)
Longed for (앞으로 바라는 점)

 이번 주 목표

예) 자바 기초 제대로 다지기
예) 강사님께 1일 1질문 하기

 Liked(좋았던 점)

예) 디렉토리 구조를 잡는 방법 제대로 파악함!

이번 협업 프로젝트를 진행하며 혼자 디렉토리 구조를 잡는 것보다 팀원분들과의 협업을 통해 어떤 방향으로 디렉토리 구조를 잡아갈지 서로 논의하고 구성하는 시간을 통해 많이 배울 수 있었던 한 주였다.
이전에는 api를 여러 파일에서 정신없이 불러왔다면 이번 프로젝트를 통해 api만 관리하는 폴더를 따로 생성했고 해당 api가 필요한 모든 파일에서 하나의 api파일만 사용할 수 있도록 디렉토리 구조를 잡음으로서 혼란스럽지 않은 코드 구성을 할 수 있었다.

 Lacked (아쉬웠던 점)

예시) 검색 기능 구현

검색 기능은 사용자가 검색어를 입력했을 때 검색 버튼이 따로 존재하는 것이 아닌 검색어의 값이 변경될 때마다 데이터가 조회될 수 있도록 구현해야 했다.
이 방법에 대해서 고민하다가 useState로 input 태그에서 onChange되는 값을 계속 캐치해서 api를 호출하고, 변경되는 값에 따라서 데이터가 조회될 수 있도록 구현했다. 하지만 이 부분에 대해서 멘토님이 효율적이지 않다는 말씀을 해주셨고, 변경할 때마다 캐치하는 것이 아닌 시간을 정해서 이후 시간에 몇 초 이후에 검색어를 찾아서 구현하도록 하거나 debounce, throttle에 대해서 공부해보면 좋을 것 같다는 피드백을 받았다.
debounce, throttle에 대해서 공부를 해서 검색 기능을 조금 더 안정성을 높여 개발할 수 있도록 공부와 적용을 해봐야겠다.

 Learned (배운 점)

예시) 로그인 연장 처리

처음엔 App.js에서 useEffect를 사용해서 화면이 리렌더링될 때마다 access token을 다시 받아오도록 구현을 했었는데, 이렇게 구현하게 되면 access token이 필요한 api를 호출할 경우 이전 access token과 이후 access token이 꼬여서 유효하지 않다는 msg를 받게 되는 문제가 발생하였다. 멘토님의 피드백을 통해 axios interceptors response로 백에서 토큰 만료와 관련된 403에러 메세지를 받을 경우 이를 미리 캐치해서 403에러가 발생하면 access token을 다시 발급받고 다음 api가 호출되도록 변경함으로써 로그인 연장을 구현할 수 있었다.

 Longed for (앞으로 바라는 점)

예) 시간을 효율적으로 활용하는 방법 고민해보기

1주일이라는 시간 안에 많은 기능을 구현해내는 것은 쉽지 않았다. 원래는 소셜 로그인을 구현할 예정이었으나 예상치 못한 오류 파티를 접했고 이를 구현해내는데 많은 시간을 할애하게 되어, 구현해야할 기능들이 밀리게 되었다. 이럴 경우 우선순위를 확실하게 정하고 빨리 해결할 수 있는 기능들을 먼저 구현하고 차후에 시간적 여유가 생길 경우 어려운 기능을 구현하는 방향으로 효율적인 시간 분배를 해봐야겠다.