📖 もうちょい詳しく
何が新しいの?
GraphQL(グラフキューエル)は、アプリとサーバーがデータをやりとりするときの新しい取り決めです。これまで広く使われてきたREST(レスト)という方式では、ほしい情報の種類ごとに窓口(URL)が分かれていることが多く、ほしいものを集めるのに何度もやりとりが必要になりがちでした。GraphQLは、その手間を減らすために作られました。
どうやって動いてるの?
GraphQLでは、ふつう窓口は1つだけです。そこへ「この情報と、この情報がほしい」という注文書(クエリといいます)を送ります。サーバーはその注文どおりに、必要な分だけをまとめて返します。注文に書いた項目しか返ってこないので、よけいなデータがついてくることが少なくなります。
何ができるの?
たとえばユーザー名と、その人の最新の投稿3件を、1回のリクエストでまとめて取れます。スマホのように通信量を抑えたいときや、画面ごとにほしい項目が違うアプリで便利です。多くのWebサービスやアプリの裏側で使われています。
🌱 身近なたとえ
カフェの注文で例えると分かりやすいです。決まったセットメニューしか頼めないお店だと、いらないサラダまでついてきたり、逆に飲み物だけ別に頼み直したりします。GraphQLは「コーヒーとサンドだけ、サラダは抜きで」と細かく注文できる方式です。ほしいものだけを、1回の注文でまとめて受け取れます。
✅ まず覚えるポイント
- データのやりとりを取り決めるAPIの方式の1つです
- 窓口(URL)はふつう1つにまとまっています
- 「ほしい項目」を注文書(クエリ)で指定します
- 指定した分だけ返るので、過不足が減らせます
- 1回のリクエストで複数の情報をまとめて取れます
- RESTの代わりにも、組み合わせにも使えます
🧭 よくある勘違い
データベースの一種なの?
いいえ、GraphQLはデータベースそのものではありません。アプリとサーバーの間で「どんな形でデータを受け渡すか」を決める取り決めです。実際のデータは、裏側にあるデータベースなどから取り出してきます。
RESTより必ず優れているの?
そうとは限りません。GraphQLはほしい項目を細かく選べる強みがありますが、注文の仕組みを用意する手間もかかります。シンプルな用途ではRESTのほうが向く場合もあり、目的に合わせて選ぶものです。
🧩 関連して覚えると楽な言葉
- REST: 種類ごとにURLを分ける、もう1つの代表的なAPIの設計スタイルです
- API: アプリ同士がやりとりするための窓口や決まりごとのことです
- JSON: データをやりとりするときによく使われる、書き方のルールです
- エンドポイント: リクエストを送る先の窓口(URL)のことです
🏁 ひとことでまとめ
「ほしいデータだけを注文して、まとめて受け取れる」やりとりの方式、それがGraphQLです。
TERM SEARCH
ほかの用語を調べる
検索ボックスを準備中…