Skip to content

5주차 회의록

Myeonghoe Song edited this page Nov 22, 2021 · 6 revisions

2021-11-22

  • 금주 목표

    • 이슈 해소 우선 진행 후 테스트 및 성능 개선 진행
  • 해소할 이슈 내역

    • 헤더 버튼 시, PrivateRoute로 이동 시에 버튼을 2회 클릭해야 하는 이슈(마스터님께 질문) (홍승용)
    • 고화질 이미지의 경우 Profile이 정상적으로 변경되지 않는 이슈 (홍승용)
    • colorhash 라이브러리 랜덤값을 넘겨서 색상이 중복되지 않도록 설정 (홍승용)
    • 주소창에 직접 라우트를 입력해서 접속하면(ranking) 404 Not Found 페이지가 나오는 이슈 (송명회)
    • 공동 순위 처리 (송명회)
    • 여러개의 쿼리가 뭉탱이로 되야되는 경우를 찾아서 session 사용하여 transaction으로 만들기(Atomicity 보장) (홍종우)
    • 내가 쓴 후기 사이드바 렌더링 (홍종우)
    • 후기 Update / Delete 기능(문혜현)
    • refresh token db에 해시로 저장하기(문혜현)
    • 새로고침하면 recoil 날아가는 것에 대한 처리 (문혜현)
    • 6개월 이내 주소 변경, 후기 재작성 금지
    • 에러 처리 한곳으로 모으기 (리팩토링)
    • 별 스타일 (레이어간 높낮이가 안맞음 - OS 차이?)
  • 성능 개선/도전할 수 있는 부분 고려

docker (홍승용) mongodb replica (홍승용) Mongo db ncloud 옮기기 && Map path정보 인메모리로 관리 (홍승용) splitting code (홍종우) ncloud code_deploy (홍종우) jwt refresh token(문혜현) 웹 성능 최적화(history routing 최적화)(문혜현) SWR (송명회) React.memo (송명회) elastic search refactoring

테스트 코드 작성(프론트, 백엔드) : 토요일(평일과 똑같이)

리팩토링할 내용

  • Backend
    • Type 분리
      • 프로젝트 src 하단에 type.d.ts 파일 별도로 분리
    • customError
      • 200 response가 아닌 경우 모두 try - catch 문 내부에서 Error throw 로 동작
    • res.json 형식 만드는 함수 utils에 만듦
    • Error 처리 하나의 middleware로 진행되도록 리팩토링
    • @types는 nodemodule에서 이미 지정해주었기 때문에 @myType으로 만듦
    • AdminController message 수정할 것
    • 서버 렌더링 최적화 방법 확인 및 적용
  • Frontend
    • App.tsx modal component로 하지 않으면 오류 발생
    • Modal은 x버튼 클릭 시에만 닫히도록 임시 수정(추후 일반화)
    • Callback -> 이름 변경할 것 Loading 등으로
    • Plate -> Modal로 이름 변경할 것.
    • 현재 모든 type이 global로 설정되어 있는데 이에 대한 고려 필요
    • Page들도 폴더로 구분하여 하나의 index.tsx 파일로 분리
    • Toast Message 설정
    • res status 값에 따라 화면 렌더링 결정하도록 로직 수정
    • Hooks, types 폴더 별도로 생성하여 custom hook은 hooks에 type들은 types 폴더로 분리(enum은 util로 유지)
      • custom hook 이름은 폴더 이름과 되도록 일치
    • useCallback, useMemo 모두 적절한 적용

구현할 기능/해소할 이슈

기능 우선순위 담당자 결과
사이드바 내가 쓴 후기 UI 홍종우
MongoDB 세션 기반 Multi Query 적용 홍종우
swagger API 명세서 개선(Prod/Dev) 홍종우
Eject / Code Splitting 홍종우
NCloud Code Deploy 적용 홍종우
주소창에 /ranking 입력해서 접근할 경우 404 이슈 송명회
랭킹 모달 공동순위 표시되도록 수정 송명회
마커 정보 불러오기 SWR 적용 송명회
React.memo 컴포넌트 캐싱 송명회
프로필 이미지 validation 홍승용
폴리곤 색상 겹치지 않기(알고리즘) 홍승용
PrivateRoute 버그 해결 홍승용
docker 적용 홍승용
mongodb replica 홍승용
map data in-memory 홍승용
refresh token db 저장 문혜현
history routing 재렌더링 최적화 문혜현
recoil 새로고침 대신 storage 또는 fetch 사용 문혜현

멘토님

  • id, address 등의 recoil 값이 새로고침하면 사라지는데, 이를 유지하기 위해 session storage, local storage를 사용하려 합니다. 보안의 이유로 사용해도 되나요?
  • useCallback에 불 필요해 보이는 dependency를 모두 넣어주는 것이 맞는가요?
  • Modal URL 이동 후 Modal을 제거하면 Router를 한 번 타게 되는데, 이 때 (상태가 변경되지 않음에도) 전체 페이지가 재렌더링 되는 현상을 막는 방법?(크롱님 문의드리자!)
  • 헤더 버튼 시, PrivateRoute로 이동 시에 버튼을 2회 클릭해야 하는 이슈(크롱님 문의드리자!)
  • MongoDB Map document 한 번에 업데이트 하는 방법?
Clone this wiki locally