서비스를 런칭하기 일주일이 남은 상황이다.
현재 다양한 기능을 구현하기위해 바쁘게 달리다보니
기존 코드의 결함 및 자잘한 버그들을 경시하고 있었고,
오늘과 내일을 기존 기능들에 대해 부족한 점을 보완하거나
디버깅을 위한 리팩토링 기간으로 잡았다.
내가 맡은 파트가 워낙 많긴 하지만 그중에서도 가장 베이스로 맡고 있는것이
여러 API 및 컴포넌트가 동시에 포함된 글쓰기 / 글수정 / 글 상세 페이지 인데,
구현에만 급급하다 보니 상당히 최적화와 거리가 멀어진 상황이었고
무엇보다 배포된 사이트에서 글수정 페이지 진입시 4초가 넘게 걸리는 좋지 못한
상황을 직면하고 있었기에 리팩토링이 불가피 하였다.
글 수정 페이지 진입시 기존 게시글의 정보를 그대로 가져오기 위해
이미지 및 오디오 파일을 BLOB 및 FILE 객체로 변환하는 로직이 있었는데
이러한 로직이 원인이었고, 이를 해결하기 위해
글 수정 페이지 진입시 기존의 컴포넌트 들이 URL 만으로도 미리보기 이미지 및 업로드 대기열에
정상적으로 들어와 줘야 했고 , 오디오 역시 기존과는 다른 방식으로 수정 페이지에 들어와 줘야 했기에
컴포넌트들을 FILE 및 BLOB 객체가 아닌 URL만으로도 작동이 가능하게 리팩토링 해주고
서버에서도 기존에는 글 수정시 기존 글에 관련된 모든 오디오와 사진 파일들을 일단 전부 지운뒤
다시 새롭게 받아 온다는 로직에서
이와 같이 기존에 존재하는 게시물 구성요소에 대해서는 그대로 재활용하고
수정단계에서 제거된 기존 요소만 삭제하는 식으로 로직을 바꾸어 최적화 및 디버깅에
용이하게 리팩토링의 첫 걸음을 뗄 수 있었다.
이제 네이버 지도를 통해 지오코딩을 하는 컴포넌트의 리팩토링과
BGM을 설정하는 컴포넌트의 리팩토링을 남겨두고 있고,
이게 끝나면 갤럭시 폴드5 기준 모바일/태블릿 사이즈에서 사용자 경험에 적절한 레이아웃으로
반응형을 내일까지 끝마치는 것이 목표이다.