원티드 & 위코드 프리온보딩 백엔드 3회차 과제 회고

김현길·2021년 11월 9일
0

기업과제(레드브릭) 내용


📕 개발 요구 사항

  • 회원가입
  • 게임 제작하기
  • 제작 중 단계의 게임을 '프로젝트'
  • 프로젝트는 "실시간"으로 반영
  • 게임 출시하기
    - 프로젝트 당 퍼블리싱 할 수 있는 개수는 하나입니다. 퍼블리싱한 게임은 수정할 수 있어야 하며, 수정 후 재출시시 기존에 퍼블리싱된 게임도 수정
    - 출시하는 게임은 다른 사용자들도 볼 수 있으며, 사용자들의 조회수 / 좋아요 등을 기록 가능
    게임 혹은 사용자 검색'을 통해서 찾기 가능

💡 구현 기능


[회원가입, 로그인]

  • 인증방식은 JWT를 쿠키에 저장하는 방식으로 구현 하였습니다.

[조회수 수정, 좋아요 API]

  • 프로젝트 당 배포 할수 있는 개수는 하나로 구현하고, 배포한 게임은 수정 가능, 수정 후 재배포시 기존 배포된 프로젝트도 수정 가능하게 기능 구현 하였습니다.

[게임 혹은 사용자로 검색 API]

  • 게임(프로젝트명) 또는 사용자를 키워드로 하여 검색이 가능하게 기능 구현 하였습니다.

[에러 핸들링]

  • 자바스크립트 자체 내장 Error 클래스를 상속 받아서, 커스텀 에러를 생성해서 관리했습니다.

[게임 제작 API]

  • 기존의 RestFul Api 설계의 경우, 실시간 저장이라는 개념이 성립할 수 없었습니다. 어쩔 수 없이 게임을 제작하는 사용자부분은 브라우저 를 이용한 가상의 게임제작 페이지를 사용하기로 하였습니다.

  • socket.io를 이용하여 서버와 클라이언트간의 실시간 연결을 유지하고, 게임 프로젝트 데이터의 변경 시 데이터를 서버에 저장합니다.



😎 회고

이번 과제에서는, DB쪽과 API와 연결된 Service부분을 개발에 참여 하였습니다. 기존의 알고 있다고 생각하고 넘어간 부분이 실제로 개발시 스스로 정리가 안되어 있다고 생각했고, 애매한것들을 스스로 정리해보는 시간이 되어서 좋았습니다.


깃허브 링크

profile
프론트엔드 개발자를 꿈꾸고 있습니다.

0개의 댓글