ネットワーク
GraphQLの特徴として最も正しいものはどれか。
ア.サーバがどのデータをいつ送るかを完全に決定するプッシュ型データ配信プロトコル
イ.REST APIと同様に、各リソースに対して固定のエンドポイントを設けるアーキテクチャ
ウ.データベースのSQLを直接HTTPで実行するためのプロキシ仕様
エ.クライアントが必要なデータの形とフィールドを指定して取得でき、単一エンドポイントで複数リソースを一括取得できるクエリ言語仕様正解
解説
GraphQLは「注文書を自分で書けるビュッフェレストラン」みたいなもの。RESTが「シェフが決めたセットメニューを注文する」なら、GraphQLは「欲しいものだけをリストアップして一度に持ってきてもらう」スタイル。過不足なく、丁度必要な分だけのデータを一発で取得できる!
なぜ エ が正解か
GraphQLの核心的特徴:①クライアント主導のデータ取得:クライアントがスキーマから必要なフィールドを指定→オーバーフェッチ(余分なデータ取得)・アンダーフェッチ(必要なデータが足りない)を解消②単一エンドポイント:通常/graphqlの1つのURLで全操作③操作種別:Query(取得)/ Mutation(変更)/ Subscription(リアルタイム)④強型付きスキーマ:型システムでAPIを定義⑤N+1問題等のデメリットも存在(DataLoaderで対策)。
出典: AI生成問題(学習用)