API (Application Programming Interface)
API는 컴퓨터나 컴퓨터 프로그램 사이의 연결.
프로그래밍에 사용되며, 어플리케이션과 상호작용할 때 사용.
REST API (Representational State Transfer)
HTTP URL를 통해 리소스를 명시하고 HTTP 메소드(POST, GET, PUT, DELETE)로 리소스를 요청하거나 수정하는것을 의미.
( URL에서 이름 표현으로 해당자원의 상태와 정보를 주고받는것.)
GRAPH QL
GraphQL는 메타(페이스북)에서 만든 API를 만들 때 사용할 수 있는 쿼리언어어이다. 그와 동시에 쿼리에 대한 데이터를 받을 수 있는 런터임이기도 하다.
GRAPH QL 이 해결하는 문제.
1.OverFetching
사용하려는 리소스가 가져온 리소스보다 더 많아서 생기는 문제.
정확한 리소스를 지목해서 가져올 수 있기 때문에 네트워크 연결이 지연되는 환경, 로딩시간 줄이기에 도움이 됨.
2.UnderFetching
사용하려는 리소스가 가져온 리소스보다 더 적어서 혹은 여러번 리소스 요청을
해야하는 경우에 생기는 문제.
각각 여러번의 요청을 묶어서 한번에 전달 할수있음.