카우치 코딩 팀 세번째 & 네번째 회의

삶은달걀·2022년 1월 23일
1

어제 세번째 회의로 DB 명세서 작성을 끝냈고 오늘 네번째 회의로 API 명세서 작성을 끝냈다. 어제자 내용은 기록하려다가 너무 피곤해서 못 썼었는데 각자 그려온 DB 관계도이자 ERD 다이어그램을 하나로 합쳐 최종본으로 정리하고 API 스터디(?)를 잠깐 했다.
오늘 각자가 파트별로 작성한 API 명세서를 합치다 보니 기능에 대한 endpoint 지정이 헷갈렸는데 나도 이렇게 명세서를 미리 작성해 놓고 프로젝트를 진행한 적은 처음이라 멘토님들께 질문을 하고 내용을 정리하기로 했다.
entity CRUD를 기준으로 기능을 작성할 때는 별 문제를 못 느꼈는데 아무래도 화면 상에서의 사용자 행동 흐름을 따라 기능을 정리하다 보니까 중복되는 기능에 대해 호출하는 API가 어떻게 되는지 혼란스러워지기 시작했다.
예를 들어 게시글에 작성한 댓글을 내 정보를 통해서 모아보는 경우에도 수정이나 삭제를 할 수 있는데 그 게시글을 통해서 수정이나 삭제를 하는 경우와 경로는 달라도 기능은 같은 부분이라 endpoint가 달라져야 하는가 하는 의문이 들어서... 그리고 관계성이 있는 개체의 호출에 대한 부분도 헷갈리기 시작했다. 원래는 게시글을 불러올 때 댓글 리스트도 함께 가져와야 한다고 생각했다. 그런데 리액트로 SPA를 작성하게 된다면 컴포넌트를 분리해서 한 페이지에 두 개의 컴포넌트(게시글, 댓글)가 로드된다고 할 수 있으니 댓글은 밑에서 보여질 때 목록의 호출이 발생할 거 같기도 하니까.
기본적으로 한 리소스에 대한 crud는 method를 바꾸는 것으로 가능해진다.
API 기본
API 역할
기본적으로 하나의 리소스에 대한 내용을 생각하면 간단했는데 다른 리소스와 관계되니 나도 아직 모르고 부족한 부분이 많다는 게 느껴졌다.
덕분에 내가 옛날에 교육 받으며 했던 클론 코딩의 코드 구조도 다시 살펴보고 공부할 수 있는 유익한 시간을 가졌다.
urls

0개의 댓글