PyQの「データ収集とWeb API」ランクに以下の2つのパートを追加しました。
【追加したパート】
- 「GraphQLを使ってみよう」パート
- 「GraphQLのサーバーを作成しよう」パート
GraphQL(グラフキューエル)とは?
GraphQL(グラフキューエル)をご存知でしょうか?
GraphQLはデータ処理APIを提供するためのクエリ言語です。以下のような特徴があります。
- 問い合わせ(クエリ)に応じてデータを処理して返すAPIを設計できます。
- 3種類の処理方法があります。柔軟な処理を行えます。
- query: データの取得
- mutation: データの更新
- subscription: データの購読
- 3種類の処理方法があります。柔軟な処理を行えます。
- クライアントで、必要なデータ構造をクエリとして定義できます。
- クエリのデータ構造と取得したデータ構造は、同じ構造になります。不要なデータ取得の無駄をなくせます。出力が入力と同じ構造なので、理解しやすいです。
- シンプルなエンドポイントで、様々なデータ構造を取得するように設計できます。
- 色々なツール・フレームワークが提供されています。また、色々な言語で利用できます。
GraphQLについては覚えることが多いです。PyQでは、覚えることを絞って「grapheneライブラリーによるGraphQLのquery」について学習します。 本パートを学ぶことで、GraphQLでできることを知って、シンプルなGraphQLサーバーを作成できるようになります。
graphene(グラフェン)
PythonでGraphQL APIを簡単に構築するためのライブラリです。
URL:https://graphene-python.org/
「GraphQLを使ってみよう」パート
以下の4つのクエストがあります。
- 「GraphQLとは」クエスト
- 「grapheneを使おう」クエスト
- 「自作クラスのフィールド」クエスト
- 「Non-Null、Union、Fragment」クエスト
GraphQLがはじめての方に「GraphQLとはどういうものか」を体験してもらいます。
PyQでは、一貫してgrapheneの使い方を学びます。
grapheneを使うと、簡単にGraphQLを処理するサーバーを構築できます。
本パートでは、grapheneの重要な機能について学習します。
「GraphQLのサーバーを作成しよう」パート
以下の4つのクエストがあります。
- 「色々なクエリの実行」クエスト
- 「GraphiQLサーバー」クエスト
- 「GraphQLクライアント」クエスト
- 「grapheneの演習」クエスト
本パートは応用編になります。 最初に、色々な応用例を実装してみます。
GraphQLには、GraphiQL(グラフィカル)というサーバーの規格があります。 たとえば、スターウォーズのデータを検索できるSWAPIがあります。 grapheneを使うと簡単にGraphiQLサーバーを作成できます。
また、本パートでは主にGraphQLサーバーの構築方法を学びますが、少しだけクライアントからの呼び出し方法も学びます。
まとめ
GraphQLのパートを追加しました。 GraphQLは覚えることが多く、独学で全部を学ぼうとすると大変です。 そのため、本パートではGraphQLをはじめて学ぶ方でも進められるように、覚えることを絞っています。
PyQでGraphQLの概要を知って、GraphQLの便利さを体感してみましょう。