graphQL Apollo Server

양성진·2022년 10월 7일
0

GraphQl

목록 보기
1/2

graphQL

공식 홈페이지의 소개에선

GraphQL is a query language for APIs

API를 위한 쿼리라고 한다.

GraphQL provides a complete and understandable description of the data in your API

완전하고 이해가능한 데이타의 description을 API에서 제공한다고 합니다.

우선 API를 위한 쿼리라고 했다.

그럼 API는 뭘까???

API (Application Programming Interface)

API는 컴퓨터나 컴퓨터 프로그램 사이의 연결이다. 즉, 프로그램들이 서로 소통하는 방법이다.
주로 프로그래밍할 때 사용하고, 어플리케이션과 상호작용할 때 사용한다.

그럼 API하면 대표적으로 많이 쓰이고 많이 들어본 것중 REST API가 있을것이다.

REST API

REST API 는 특정 URL로 요청을 통해 이루어진다. 왜 이건 자주 쓰일까???
자주 쓰이는 이유는 예측이 가능하다는 점에서다. 파라미터를 보고 쉡게 유추를 할수 있다.
?1234같이 물음표로 뒤에가 이어지기 시작하는데 그것은 RESTAPI 의 버튼 같은것이다.
REST API의 단점을 보완하고 더 개선된 사용 환경을 제공하기 위해 네이버의 다양한 서비스에서 GraphQL을 기반으로 Apollo Client를 사용한다.

GraphQL을 배워볼까???

우선 당연히 교과서는 참고해야하고,

GraphQL 공식 사이트

딱히 유튜브에서도 이해하기가 처음엔 어려워서

노마드 니꼴라스 형에게 우선 배워보길 권장한다.

무료로 30분짜리 강의가 있으니 접근이 어려우면 이 사람에게 찾아가 보도록

GraphQl은 어떤 장점이 있을까???

필요한걸 요청하고 필요한것만 받으세요! 공홈에 가면 나와있는 graphQL의 슬로건이다.
그냥 데이타를 다 받는게 아니라 정말 필요한거만 받는다는것이 굉장한 장점이라는거다.
Overfetching 이란 Client가 어느 시점에 필요하지 않은 데이터까지 요청하는 것을 말한다

이 Overfetching 헤결해주는게 이 쿼리의 가장 큰 장점이라고 생각한다.
GraphQL을 사용하면 API에 GraphQL 쿼리를 보내고 필요한 것만정확히 얻을 수 있습니다.
GraphQL 쿼리는 항상 예측 가능한 결과를 반환합니다.

플레이 그라운드에 가서 놀아보자

플레이 그라운드

타입스크립트같이 플레이 그라운드라는 곳에서 연습해볼수가 있다.

Apollo Server

공식 사이트

React서의 Apollo server는
Apollo Client의 내장 React 지원을 통해 GraphQL 서버에서 데이터를 가져와서 React 프레임워크를 사용하여 복잡하고 반응적인 UI를 구축하는 데 사용할 수 있습니다. Apollo Client는 React를 사용할 수 있는 모든 컨텍스트에서 사용할 수 있습니다

이곳에 들어가면 리덕스의 사용이 줄어들고 각광받는 아폴로 클라이언트에 대해서
비교하고 설명하는 내용이 있다. 참고 해보면 좋을거 같다.

https://d2.naver.com/helloworld/4245995

profile
프론트엔드 개발자를 꿈꾸는 돼지

0개의 댓글

관련 채용 정보