호비시의 끄적끄적

실전프로젝트 2주차 회고 본문

스파르타

실전프로젝트 2주차 회고

호비시 2022. 5. 16. 00:15

2022년 4월 22일 부터 실전 프로젝트를 시작했지만, 바쁘다는 핑계로 조금 늦게적는 2주차 회고

 

4/29 ~ 5/6

 

본격적인 개발 시작

 

기획의 방향성이 잡히고 본격적으로 개발을 시작하게 되었다.

우리의 중점기능을 파악하고 프론트엔드와 백엔드 사이를 연결시켜 줄 api 명세서 부터 작성하게 되었다.

 

0. 로그인 / 회원가입

1. 유저의 권한 부여

2. 팀 생성

3. 팀원 추가

4. 팀 보드 게시판

5. 채팅

 

ERD를 짜고 API 명세서를 작성한 후 각자 역할을 분담하여 코딩에 전념하기로 했다. 백엔드는 총 3명, 프론트는 총 2명으로 구성되었으며 백엔드 역할분배는 1. 로그인 / 회원가입 2. 채팅 3. 게시판 으로 우선 분배하였고 나는 채팅을 맡게 되었다. 프론트의 역할분배는 1. 로그인 / 회원가입 + 채팅 2. admin page 로 분배하였다.

 

웹소켓을 이용한 채팅을 구현하려 할 때 처음 사용해 보는 부분이라 이곳저곳 셀 수 없이 검색하고 남의 코드를 이해하고 내 코드로 녹여내려고 노력하였다. webSocket으로 실시간 양방향 통신을 연결하였고, 채팅방에 들어갔을 때 redis에 있는 pub/sub 기능을 활용하여 이용자가 채팅을 쳤을 때 publisher 에게 채팅이 전달되고, publisher는 subscriber 에게 받은채팅을 전송하는 식으로 채팅방을 구현하려고 하였다.

 

어느정도 코드를 짜 내려가는 중 팀원들의 트러블이 생겼다..  결론부터 말하자면 채팅을 맡고 계신 프론트앤드 한 분이 나가게 된것.. 남아계신 한분이 채팅까지 맡긴 어려운 상황이라 어쩔 수 없이 내가 프론트엔드와 백엔드 채팅 둘 다 맡게 되었다.

 

처음엔 1도 모르는 프론트엔드를 해야한다는 부담감에 쉽지 않았지만, 걱정과는 달리 생각보다 빠르게 진행되었다. 웹소켓을 전혀 모르는 상황에서 코드를 짜고 있었으니, 프론트와 연결이 안될 때 백에서 나는 오류인지, 프론트에서 나는 오류인지 파악하기가 쉽지 않았다. 하지만 프론트와 백 둘다 손에 쥐고 있으니, 어느쪽에서 문제가 있는지 쉽게 찾을 수 있었다. 

 

다만 문제는 채팅 내역의 저장이었다. 채팅방을 나가는 순간 구독이 끊기는 상태가 되어 다시 채팅방을 들어가더라도 채팅 내역이 다 사라지게 되는 것이다. 이것에 관하여 중간 멘토링 때 멘토분께 여쭤보았다. 채팅내역을 redis에 저장하여 채팅방에 들어갈 때 redis에 있는 채팅내역들을 불러오는 식으로 해결하는게 좋겠다는 피드백을 받아 채팅내역을 저장할 수 있었다. 

 

2주차 대략적으로 나온 아무튼 출석 USER 목업 VER1

비록 팀원 1명이 나갔지만, MVP 기능 구현까진 어느정도 맞출 수 있겠다 라는 확신이 생겼다.

Comments