웹 미니게임 사이트
개요
개발기간 : 2022.03 ~ 2022.06
인원구성 : 개발자 2명
사용기술 : Express, TypeScript, MongoDB, AWS, Git
기능 : 제비뽑기, 랜덤숫자, 유튜브 조회수 맞추기, 날씨 맞추기, 하키게임, 숫자야구
수행업무
- Webpack을 통한 파일 단위 모듈 관리
- Socket을 이용한 하키게임 개발
- googleapis를 이용한 Youtub영상정보 조회게임 개발
- AWS를 활용하여 프로젝트 배포
- Javascript기반 프로젝트 TypeScript로 마이그레이션
회고록
본 프로젝트를 수행하며, 네트워크 병목현상을 최소화하기 위해 Webpack을 적용하였습니다. 적용과정에서 단순 모듈단위 개발 이 아닌 번들러를 통한 그룹화 개발을 경험할 수 있었고, 결과적으로 서비스 네트워크 비용을 절감할 수 있었습니다.
하키 게임에서 Socket을 이용하여 단순히 각각의 사용자 이벤트를 전달하게 될 경우 네트워크 환경, PC 스펙에 따라 바라보는 화면이 달라질 위험이 있습니다. 이를 해결하기 위해 Server Socket에서 사용자에게 주기적으로 데이터를 송신하는 형태로 변경하였고 사용자 동기화 문제를 해결할 수 있었습니다.
초반 기획과정에서 제공할 서비스를 확실히 정하지 않고 즉흥적으로 만들고 싶은 게임을 추가하였기 때문에 진행 과정에서 파일 구조가 점점 복잡해졌습니다. 이로 인해 프로젝트 구조 리펙토링을 2회 진행하였고 해당 작업에 시간을 소요하게 되었습니다. 이러한 상황이 발생하지 않도록 기획과정에서 전반적인 서비스를 확정 짓고 진행했으면 어땠을까 하는 아쉬움이 남았습니다.