GraphQL 은 API를 위한 쿼리 언어이며 타입 시스템을 사용하여 쿼리를 실행하는 서버사이드 런타임입니다
graphQL의 장점
Overfetch 방지
Overfetch란 어플리케이션에서 실제 필요한 데이터보다 클라이언트에서 더 많은 데이터를 다운받는 것을 말하며, rest api를 사용하게되면 실제 사용되는 정보만 불러오는것이 아니라 사용하지 않는 정보들도 불러오기 때문에 overfetch이 발생된다. graphql의 경우는 사용하는 정보만 요청하기 때문에 일어나지않습니다.
Underfetch 방지
Underfetch란 특정 엔드포인트가 필요한 정보를 충분히 제공하지 못하는 경우를 말하며, 특정 정보들을 얻기위해서 1번의 요청이아니라 여러번 요청을 보내야하는 경우를 말합니다.
Typed schema
API로 노출되는 모든 타입들은 스키마에 정의됩니다. 이 스키마를 통해 클라이언트와 서버간의 data type 차이로 인한 버그를 없앨 수 있습니다.
Last updated