/node_bird

Primary LanguageJavaScript

node.js 교과서 클론 및 스터디

  • SNS 서비스 및 테스트 관련 클론 어플리케이션

  • 본 코드 및 내용은 ZeroCho 님의 저작물인 Node.js 교과서를 학습하는 과정에서 개인의 학습을 위해 작업한 Repo입니다.

핵심 정리

  • 서버는 요청에 응답하는 것이 핵심 임무, 수락과 거절을 떠나서 반드시 응답해야 함
  • 개발 시 서버를 수동으로 재시작하지 않으려면 pm2, nodemon 등을 활용
  • dotenv 패키지와 .env 파일로 유출되면 안되는 비밀 키 관리(gitignore 필수)
  • 라우터는 routes 폴더에, 데이터베이스는 models 폴더에, html 파일은 views 폴더에 구분하여 저장
  • DB 구성 전에 데이터 간 1:1, 1:N, N:M 관계를 파악
  • 미들웨어 사용 기억
  • passport 인증 과정 파악, serializeUser와 deserializeUser 호출 파악
  • multipart 처리용 패키지 multer 사용

스스로 해보기

  • 팔로잉 끊기 - 구현 완료
  • 프로필 정보 수정(시퀄라이즈 update 메서드와 라우터 활용)
  • 게시글 좋아요 누르기 및 좋아요 취소하기 (사용자-게시글 모델 간 N:M 관계 정립 후 라우터 활용) - 구현
  • 게시글 삭제하기(등록자와 현재 로그인한 사용자가 같을 때 시퀄라이즈의 destroy 메서드와 라우터 활용) -구현
  • 매번 데이터베이스를 조회하지 않도록 deserilalizeUser 캐싱하기(객체 선언 후 객체에 사용자 정보 저장, 객체 안에 캐싱된 값이 있으면 조회)