仕様なのですが、こいつがなかなか結構すごいやつなのです。クライアントとサーバー間の通信を行うときに利用するクエリ(query)言語です。クエリ(query)とは?クエリ(query)とは、「質問する」「紹介する」「問い合わせる」などの意味をもつ英単語です。クエリとか言いますよね。要求するクエリ言語という意味になります。グラフ......といえば、おそらく「折れ線グラフ」や「円グラフ」「棒グラフ」といったものを連想すると思います。指すグラフは、グラフ理論を元にしたもので、点(ノード)と線(エッジ)の集合で構成されたグラフのことを指しています。ロゴマークも、点と線で構成されておりグラフになっています。グラフとは、データ構造としてのグラフとして理解すると良いでしょう。実装されたAPIが、どのように動作するのか見てみましょう。特徴を捉えることができると思います。欲しいデータだけを取得できるたとえば、現在のログインしているユーザーの名前を取得するクエリを発行しましょう。{login}}以下のようなデータが返ってきます。(ログインユーザー名)}}}クエリとデータの構造が同じようになっていると思います。1回の通信で欲しい情報を取得できるもう少しデータを取得してみましょう。上記の3件を取得してみましょう。それと同時に、「GraphQL」という名前を含むリポジトリ数も取得してみましょう。1つのクエリで情報を取得できます。クエリは、以下のようになります。{repositoryCount}}返ってくるデータは、以下のようなものになります。1つのクエリで一気に取得できました。どのようなデータが欲しいのかクエリに書くと、そのデータがそのまま返ってきます。取得するデータをクライアント側で定義できるので、必要なデータだけを取得することが可能です。複数の情報も、1つのクエリで取得可能です。各言語で実装がされています。作成する場合、開発言語の制限を受けることはないでしょう。