쇼노트
REST API만으로 충분하지 않았을까요? 대부분의 개발자에게 REST는 너무나 익숙한 기술입니다. 하지만 페이스북은 왜 굳이 GraphQL이라는 새로운 API 기술을 만들었을까요?
이번 에피소드에서는 REST API를 설계하고 사용하면서 겪는 불편함에서 출발해 GraphQL이 등장한 배경을 살펴봅니다. 모바일 시대에 중요해진 Over-fetching과 Under-fetching 문제부터 GraphQL의 스키마와 타입 시스템, Query와 Mutation의 개념까지 실제 예시를 통해 알아봅니다.
물론 GraphQL이 REST보다 무조건 좋은 것은 아닙니다. N+1 문제와 캐싱의 어려움, 학습 비용과 오버엔지니어링 가능성도 함께 짚어봅니다. 그리고 어떤 상황에서 REST가 적합하고, 언제 GraphQL이 빛을 발하는지, 두 기술을 BFF(Backend for Frontend) 아키텍처에서 어떻게 함께 활용할 수 있는지도 이야기합니다.
마지막으로 AI 에이전트가 코드를 작성하는 시대에는 API 기술의 선택 기준이 어떻게 달라질 수 있을지도 생각해 봅니다. 명확한 스키마와 타입 시스템을 갖춘 GraphQL이 AI 에이전트에게 어떤 이점을 제공할 수 있을까요?
REST만 사용해 보신 개발자라면 GraphQL을 이해하는 계기가, 이미 GraphQL을 사용하고 계신 개발자라면 기술 선택의 기준을 다시 생각해 보는 시간이 되었으면 좋겠습니다.