- FACTS: 이번 일주일 동안 있었던 일, 내가 한 일
아이템 시뮬레이터 프로젝트
클래스 생성 API
클래스 필드에 필요한 밸류들과, 운영자 인증을 위한 adminId와 adminPassword를 입력한다.
SELECT * FROM `item_simulator`.`Classes` LIMIT 1000;
잘못된 adminId나 adminPassword를 입력했을 경우
아이템 생성 API
req.body를 통해 필요한 데이터를 전송한다.
Items 테이블에 반영이 된 모습
클래스별 기본아이템 생성 API
"classId: 1"에 해당하는 레코드는 전사 클래스이며, "itemId: 1"에 해당하는 레코드는 강철심장 아이템이다. 즉, 전사 클래스의 기본 아이템으로 강철심장을 선택했다.
아이템을 수정하고 싶을 때, MySQL의 경우
아이템 수정 API
ID를 틀린 경우
- FEELINGS(느낌, 주관) : 나의 감정적인 반응, 느낌
서버 개발과 네트워크에 대한 공부를 시작하면서, 다소 생소한 개념들을 많이 접하게 되었다. 기존에는 보다 알고리즘이나 함수를 어떻게 효율적으로 작성할 것이냐에 치중되어 있었는데, 고작 배열이나 다루던 내가 이렇게 큰 단위의 데이터를 원격에서 다루어야한다니! 다른 세상이 열린 기분이 들었다. ubuntu라는 운영체제 아래에서 내 레포지토리를 다운로드 할 때는 어쩐지 창작물에 빙의된 것 같이 느껴지기도 했다.
- FINDINGS(배운 것) : 그 상황으로부터 내가 배운 것, 얻은 것
지레 낯설다고 편견을 가지고 시작해서인지 헤매는 일이 잦았다. 로컬에서는 밥먹듯이 하던 npx prisma db push
를 까먹어서 한동안 애를 먹기도 했고, .env
파일이 없다는 걸 간과하고 코드를 고치느라 시간을 낭비하기 일쑤였다. 우여곡절 끝에 진실을 깨달았을 땐 솔직히 스스로가 너무 황당하게 느껴졌다. 차라리 몰라서 막혔던 거면 모를까. 로컬 환경에서 뻔히 해봤던 걸 단지 원격이란 이유 때문에 모두 놓치고 있었다. 그래도 뒤늦게 문제를 파악하고 도메인 연결까지 성공할 수 있었다. 그 후엔 prisma와 MySQL 사용법을 더 자세히 공부하는 계기가 되었다.
- FUTURE(미래) : 배운 것을 미래에는 어떻게 적용할 지
사전캠프에서 배웠던 내용들을 다시 복습하면서 앞으로 진행할 프로젝트에 어떻게 적용시키면 좋을지 차근차근 고민해보면 좋을 것 같다. 내가 맡은 역할은 풋살 게임의 로스터를 구축하는 API인데, 매치메이킹을 위해서 선수단 구성을 DB에 저장시키게 될 것 같다. 이렇게 저장한 정보를 ORM 방식으로 접근하여 데이터를 추출하고 활용하는 게 관건이 될 것이다.
댓글