상세 컨텐츠

본문 제목

[노마드코더] GraphQL API 만들기 - 첫번째

개발 공부 (Nomadcoders)/GraphQL

by letprogramming 2021. 1. 19. 21:59

본문

반응형

[참고] https://nomadcoders.co

 

노마드 코더 Nomad Coders

코딩은 진짜를 만들어보는거야!. 실제 구현되어 있는 서비스를 한땀 한땀 따라 만들면서 코딩을 배우세요!

nomadcoders.co

REST의 단점

1. Overfetching : 현재 필요한 정보 이외의 당장 필요없는 데이터까지 fetch받는 경우

2. Underfetching : 애플리케이션 시작할 때 데이터를 받기 위해 많은 요청을 함

 

=> GraphQL의 장점 : 위의 문제들을 해결

여러 개의 URL(end point)가 아닌 하나의 end point만 존재.

하나의 쿼리에 필요한 모든 데이터를 object형태로 담아서 통신

 

간단한 영화 정보 API를 구현하면서 느낀 점은 메소드에 대한 고민이 없어진 것이었다.

REST API를 이용할 때는 end point와 메소드의 갯수가 늘어날 때마다 늘리지 않을 효율적인 방법이 없을까 고민했었고

실제로 ICT 인턴을 할 때도 그 문제가 이슈가 된적이 있었다.

요청을 한 번만 해도 될 일을 여러 번 하도록 구현했고 당시 팀장님께 조언을 받았던 기억이 난다.

 

짧고 간단했지만 GraphQL을 잠시 사용해보니 앞서 말한 문제점들이 줄어든 느낌이었다.

URL이나 GET, POST같은 메소드에 관한 고민도 줄어들고 BODY를 어떻게 구성할지, JSON 파싱 같은 사소한 이슈들도 줄어들어

편리하다는 생각이 들었다.

반응형

가장 와닿았던 부분은 두 개로 나누어져 있는 API에 쿼리를 보내 정보를 받을 때

REST API의 경우 프론트엔드에서 두 번의 쿼리를 보내 각각의 정보를 받아서 페이지를 구성해야 하지만,

GraphQL은 한 번의 쿼리만 보내도 두 API의 데이터들을 한꺼번에 받을 수 있었다.

이 부분을 보았을 때 GraphQL이 REST의 어떤 부분을 개선했고 왜 사용하는지에 대해 깨달을 수 있었다.

 

앞으로 사이드 프로젝트를 진행할 때 REST API가 아닌 GraphQL API를 이용해서 진행해보고 싶다.

 

반응형

관련글 더보기