HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
💌
JJong’s Archive
/
❄️
Honterview : Reboot
/
🐵
리팩토링 사항
🐵

리팩토링 사항

스택 관련

  1. 서버 → Next.js로 변경 (aws 서버 지원 종료로 인해 next.js로 풀스택 개발)
  1. prisma로 orm 관리
  1. db는 postgresql로 (vercel 지원으로 편리성)
  1. vercel로 배포 (next.js 친화 & 빠르고 간편한 설정)
 

디렉토리 관련

  1. 디렉토리 네이밍 변경 (가독성을 위함)
      • 카멜케이스 → 케밥케이스
  1. 디렉토리 구조 변경 (depth 깊어짐 방지)
      • src/app
        • page.tsx : containers에 있는 것들로 구성된 컴포넌트
        • api : api routes
      • src/containers : 페이지 별로 폴더 만들어 각 페이지에 쓰이는 컴포넌트 등을 담음
        • components : 컴포넌트 단독 파일은 tsx파일로만. 두개 이상의 파일이 필요한 컴포넌트라면 폴더로. (파일, 폴더 네이밍은 모두 컴포넌트 이름)
      • constants, types : 쓰이는 컴포넌트의 상단에 위치. 너무 길어질 경우 파일로 따로 뺌
      • 공용 : src 바로 밑에 디렉토리 구조(ex. src/containers) → 중간에 shared 추가(ex. src/shared/contianers)
  1. interview/video, chat → interview/practice/video, chat

기능 관련

삭제
  1. 새로고침 시 인터뷰를 삭제 하는 것으로 변경 (ft. 경고알림)
    1. ⇒ 면접 세팅 값은 전역변수로만 저장하도록, api x
  1. gpt의 꼬리질문은 질문리스트에 추가하지 x (정제되지 않은 데이터 피하기 위함)
  1. 질문 북마크 삭제 ⇒ 좋아요로 표현 (혼동방지를 위함)
 
추가
  1. 질문 추가 기능
  1. 북마크한 질문으로만 인터뷰 진행 기능
    1. 랜덤 기능
  1. 캐쉬
 

그 외

  1. 불필요한 합성 컴포넌트를 일반 컴포넌트로 변경
  1. 네이밍을 좀 더 구체적이고 직관적이게 변경