Что такое GraphQL

«Что такое GraphQL» — вопрос из категории Сети, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

GraphQL — это язык запросов для API, который позволяет клиентам запрашивать только нужные данные, избегая избыточности. В отличие от REST, где сервер определяет структуру ответа, в GraphQL клиент сам указывает, какие поля ему нужны.

Преимущества:

  • Гибкость: клиент запрашивает только необходимые данные
  • Меньше запросов: можно получить связанные данные за один запрос
  • Типизация: строгая схема данных

Пример запроса:

query {
  user(id: "1") {
    name
    posts {
      title
    }
  }
}

На Android используется с библиотеками типа Apollo или Relay.