GraphQL의 유연성은 어디서 비롯되는 걸까요?
GraphQL 쿼리 또는 뮤테이션의 페이로드는 필드들의 집합으로 구성됩니다. GraphQL서버를 구현할 때, 각각의 필드들은 저마다 리졸버라고 불리는 함수에 대응합니다.
리졸버 함수의 유일한 목적은 해당 필드를 위한 데이터를 불러오는 것입니다. 서버가 쿼리를 받았을 때, 쿼리 페이로드 상에 명시된 각 필드들에 대한 함수들을 모두 호출하게 됩니다. 이를 통하여 쿼리를 해결하고 각 필드에 대하여 올바른 데이터를 반환할 수 있게 됩니다.
GraphQL은 특히 프론트엔드 개발자에게 특히 편리합니다. 많은 불편함을 해소시켜주죠. 복잡성은 막중한 연산 작업을 모두 감당할 수 있는 강력한 머신이 존재하는 서버 측에 맡겨 버리면 됩니다. 클라이언트는 불러올 데이터가 어디서 비롯되는지 더 이상 알 필요가 없고, 단지 딱 하나의 일관성 있는 API를 사용하기만 하면 됩니다.
<aside> 💡 오잉?
</aside>