GraphQLの基礎知識
概要
GraphQLはAPIのためのクエリ言語であり、データに対して定義した型システムを使用してクエリを実行するサーバー側のランタイムです。
参考資料
ウズのSchema設計
ウズのSchemaは以下の資料を参考に作っています:
関連ドキュメント
基本概念
スキーマ定義
GraphQLスキーマは、APIで取得可能なデータの構造を定義します。
Query / Mutation / Subscription
- Query: データの読み取り
- Mutation: データの作成・更新・削除
- Subscription: リアルタイムのデータ変更通知
型システム
- スカラー型(String, Int, Float, Boolean, ID)
- オブジェクト型
- インターフェース
- ユニオン型
- 列挙型(Enum)
実装での注意点
- N+1問題の回避(DataLoaderの使用)
- 適切なエラーハンドリング
- 認証・認可の実装
- スキーマのバージョニング戦略