오늘은 무엇을 먼저 해야하지?


14-2 vs 27로 고민 했고, 27로 선택.

14-2번은 *‘게임페이지 접근하기’*인데 동재님과 혜원님이 담당하는 메인, 대기페이지 소켓 및 기능 작업이 끝나면 이어서 진행하면 좋을 것 같다고 판단해서 27번 *‘유저 각자가 그려야 하는 그림의 제시어가 표시된다.’*를 진행하기로 했다. ⇒ 동재님이 소켓쪽 리팩토링을 진행하고 있어서 40번 *‘현재 남은 시간을 확인할 수 있다.(타이머)’*를 먼저 진행.

랜덤단어(제시어)


api vs socket event?

처음 제시어를 요청할 때는 API를 사용하고, 다른 사람에게 제시어를 전달할 때는 socket event를 쓰는 방법으로 하려고 했는데, API를 굳이 써야하나? 라는 생각이 들었음.

⇒ 이미 만들어 놓은 소켓이벤트 ‘start-game’을 사용하면 좋겠다고 생각함.

따라서 start-game 이벤트의 payload에 randomWord라는 것을 전달하기로 함.

구현 방법

클라이언트 :

  1. 호스트가 게임을 시작하면 Game 페이지 컴포넌트에서, ‘start-game’ 이벤트를 emit (useEffect)
  2. 서버에서 다시 emit한 ‘start-game’이벤트를 on해서 받은 랜덤 단어를 콘솔에 찍어서 테스트
  3. 제시어가 속한 SketchbookCard 컴포넌트에서 2에서 받은 랜덤 단어를 제시어 자리에 보여줌

서버 :

  1. 랜덤 정수 생성 메서드 구현 (테스트용으로 랜덤 숫자를 만듦)
  2. ‘start-game’ 이벤트를 listen. payload로 lobbyId를 받음.