Project Management/회고

[일일회고] 2차 중간점검과 소켓통신(채팅)

Bans 2022. 9. 8. 01:23

 

2차 중간점검의 날.

지난 1차점검때 조언받았던 내용들을 보완하고

현재까지의 진행상황을 공유하기 위해, 발표때 준비해야할 목록들을 아침 회의에서 정리해보았다.

 

BE 에서는

어제 간과했었던 '거리계산',

오늘의 댕댕이 <- 페이지를 위한 '좋아요 테이블' 및 'getTodayTopTwelve'

좋아요 성사된 강아지들(유저)끼리의 채팅을 위한 webSocketChatting

 

이 세가지가 당장 당면한 과제라 생각하며, 오늘 다 보여주지 못해도

이번주 내로 다 쳐낼 수 있도록 작업하는 것을 목표로 삼았고

 

FE 에서는

유저의 시작지점 - 회원가입, 강아지등록, 메인페이지 접근을 시작으로

화면계획서에 작성한 페이지들을 하나하나 작업해 나가는 것을 목적으로 잡았다.

 

피드백 받은 내용

 

생각보다 작업해야할 내용들이 많았다.

처음엔.. 금방 API 작업들을 마무리할 수 있을줄로만 알았는데

놓치고 있는 부분들이 많았고,

 

실제 개발이 완료되었더라도

프론트 코드와 연동하면서 발생하는 에러들을

잡아나가고, 원하는 return값으로 제공해야하는 등..

해야 할 일이 많았다..! 여유부릴 때가 아니다!!

 

하지만 밥은 먹어야지

 

어제부터 잡고있던 웹소켓 통신-채팅 부분을 구현해보기 위해 이것저것 시도를 많이 해봤던 듯 하다..

제일 문제였던 부분은..

백엔드의 웹소켓 버전과

프론트(여기서는, 테스트 페이지였지만..)의 웹소켓 버전이

서로 맞지 않는 버전이면 작동하지 않는.. 오류의 부분이었다.

(역으로 말하면, 매치되는 버전에서만 작동)

 

 

참고한 코드를 바탕으로

참고한 페이지의 버전으로 버전다운을 진행해서 이것저것 테스트해보다가..

실제 테스트 데이터가 오지 않아 좌절하던 도중..

 

결론을 내렸다..

 

아.. 최신버전으로 처음부터 다시 시작해보자..

 

그래도 여기가 있어서 npm install (yarn add) 부분부터 시작해볼 수 있었다..!!

 

Building a realtime Chat in Nestjs

Websockets is a communication protocol which provides full-duplex communication channels over a single TCP connection established between a web browser and a web server. This allows the server to sent to the browser without being called by the client.

gabrieltanner.org

 

 

emit 과 on,

socket 이기에 실행되는 3-way-handshaking

event 를 이용한 메시지 구분 ( + 이를 이용해서 '채팅방' 구분도 동시 진행 예정!)

 

이 부분에 대한 간략한 이해가 끝났으니

내일은..

쌓이는 채팅기록을 DB 에 저장하는 로직을 구현해봐야겠다.

 

참..

재밌는데..

벌써 새벽 1시 22분이다 ㅠㅠ

 

느릿느릿 하지 말고

빨리! 신속하게! 하지만 정확하고 끈기있게 밟아가는

개발자가 되고 싶다 🥲