4章スキーマの設計
GraphQLはデザインプロセスを変える存在です。APIはRESTのエンドポイントの集合ではなく、型の集合としてとらえられるようになります。この新しいAPIを作り始める前に、APIのデータ型を定義する方法について話さなければなりません。このデータ型の集合をスキーマと呼びます。
スキーマファーストは設計の方法論です。スキーマファーストではアプリケーションを作成するチームメンバー全員がデータ型について理解しています。バックエンドの開発者は永続化し、リクエストに応じて返すべきデータ型を明確に理解しています。フロントエンドの開発者はユーザーインターフェースを組み立てるためにそれぞれのデータ型の定義を理解しています。スキーマファーストではすべてのチームメンバーがデータ型を共通言語にして開発にまつわるコミュニュケーションを取ることができます。
型を簡単に定義できるように、GraphQLはスキーマを定義するための言語を用意しています。これはスキーマ定義言語(Schema Definition Language:SDL)と呼ばれます。GraphQL問い合わせ言語と同様に、GraphQL SDLもアプリケーションの構築に用いる言語やフレームワークに依存せずに使用できます。GraphQLのスキーマドキュメントはアプリケーションで使用できる型を定義するテキストのドキュメントで、クライアントとサーバーの両方で、GraphQLのリクエストをバリデーションするために使用します。
この章では、写真共有アプリケーションを例にGraphQLのSDLについて学んでいきます。
4.1 型定義
GraphQLの型とスキーマを学ぶ最適な方法は、実際にそれらを作ってみることです。写真共有アプリケーションはGitHubアカウントを使ってログインし、写真を投稿し、ユーザータグを付加できるサービスです。ユーザーと投稿の管理はすべてのWebアプリケーションに通じる基本的な機能です。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access