강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

KMC님의 프로필 이미지
KMC

작성한 질문수

댓글과 대댓글 api 설계

작성

·

63

0

안녕하세요 댓글과 대댓글에 대한 조회 API에 관해 컨트롤러를 만들고 있습니다.

첫번째 사진은 postId 게시물 id에 관한 것이고

밑에 거(두번째 사진)는 처음 부모댓글을 조회하는 api입니다.

그리고 세번째 사진은 부모댓글에 대한 대댓글을 조회하는 api인데 이거를 분리시키는 게 옳은 건지 아니면 하나로 합쳐서 하는 게 좋은 지 질문 드립니다.

{D30A47DA-BC72-41FA-B099-270E3B27BF27}.png{6ACFAF32-88A5-4DC8-9B55-465FDE573673}.png{9D5D79EF-C1EF-4423-89D2-802A624F971A}.png

 

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

전한준님께서 질문하신 댓글과 대댓글 API 설계에 관해서 답변드리겠습니다.

댓글과 대댓글을 조회하는 API를 분리할지 하나로 합칠지에 대한 결정은 여러 요소에 따라 달라질 수 있습니다. 일반적으로 다음과 같은 고려사항을 생각해볼 수 있습니다:

  1. 요청의 복잡성: 댓글과 대댓글 조회를 하나의 엔드포인트로 합치면 클라이언트는 동일한 요청에서 모든 데이터를 얻을 수 있습니다. 그러나 이렇게 하면 응답 데이터의 크기가 커질 수 있습니다.

  2. 사용자 경험: 클라이언트 애플리케이션이 어떤 방식으로 데이터를 사용하려는지도 고려해야 합니다. 예를 들어, 처음에는 부모 댓글만을 가져오고, 특정 댓글을 클릭했을 때 그 댓글의 대댓글을 새로운 요청으로 가져오는 방식이라면 엔드포인트를 분리하는 것이 더 나을 수 있습니다.

  3. 유연성: 유지보수 및 확장성을 고려할 때, 분리된 엔드포인트는 코드의 가독성과 관리에 도움을 줄 수 있습니다. 각 엔드포인트가 하나의 책임을 가지기 때문에 변경 사항이 생길 때 특정 부분만 수정하면 됩니다.

  4. 성능 측면: 한 번의 API 호출로 모든 데이터를 가져오면 네트워크 요청 수를 줄일 수 있지만, 데이터가 많아질 경우 서버와 클라이언트에서 처리량이 증가할 수 있습니다. 따라서 데이터의 양도 고려해야 합니다.

Spring Boot를 이용한 RESTful API 설계에서는 요청과 응답의 구조뿐만 아니라 애플리케이션의 전체적인 아키텍처와 요구사항을 함께 고려해야 하므로 위의 요소들을 종합하여 결정하시면 좋습니다.

추가적으로 분리된 API를 설계한다고 가정할 때, 각 엔드포인트에서 수행되는 작업을 명확히 하고 클라이언트에서 필요한 데이터를 적시에 제공받을 수 있도록 API 요청 설계를 최적화하는 것이 중요합니다.

더욱 깊은 논의나 샘플 코드를 원하신다면 말씀해 주세요!

Spring Web MVC에 대한 더 많은 정보

감사합니다.

KMC님의 프로필 이미지
KMC

작성한 질문수

질문하기