generated at
『初めてのGraphQL』
2019/11

原著
2018/9/11

著者



オライリーのサブスクに日本語である


読もうと思った動機
業務で使いそうだから
オライリーのサブスクにあったから
miyamonzが読んでるのを見て、日本語のやつが存在することを知った


本について
GraphQL全く知らない人が想定読者だと思う
だいぶ読みやすい
250ページぐらい
言語はJavaScript(Node.js/React)
この本が書かれた当時は、Schema Firstが流行っていた時期であったことに注意
この本の中で「コードファースト」という単語は出てこない




1章 GraphQLへようこそ
GraphQLの概要
GraphQLの誕生の背景




おもろそうだけど、いったんスルーmrsekut
2.1 グラフ理論の用語
2.2 グラフ理論の歴史
2.3 木というグラフ
2.4 実世界でのグラフ


3章 GraphQLの問い合わせ言語
RDBMSとかSEQUELの元になった論文?

3.2.2.1 ユニオン型から

3.2 GraphQLのクエリ
3.2.1 エッジと接続
3.2.2 フラグメント
3.3 ミューテーション
3.3.1 クエリ変数
3.4 サブスクリプション
3.5 イントロスペクション
3.6 抽象構文木

4章 スキーマの設計


4.1.3 Enum
4.2 コネクションとリスト
4.2.1 一対一の接続
4.2.2 一対多の接続
4.2.3 多対多の接続
4.2.4 異なる型のリスト
4.3 引数
4.3.1 データのフィルタリング
4.4 ミューテーション
4.5 入力型
4.6 返却型
4.7 サブスクリプション
4.8 スキーマのドキュメント化

5章 GraphQLサーバーの実装
Node.jsを使う
Apollo Serverを使って、graphql serverを作る

5.2.3 InputとEnumの使用
5.2.4 エッジと接続
5.2.5 カスタムスカラー型
5.4 コンテキスト
5.4.1 MongoDBのインストール
5.4.2 コンテキストへのデータベースの追加
5.5 GitHub認可
5.5.1 GitHub OAuthのセットアップ
5.5.2 認可プロセス
5.5.3 githubAuthミューテーション
5.5.4 ユーザーの認証
5.6 まとめ

6章 GraphQLクライアントの実装
Reactを使う


6.1 GraphQL APIの利用
6.1.1 フェッチリクエスト
6.1.2 graphql-request
6.2 Apollo Client
6.3 Apollo ClientとReact
6.3.1 プロジェクトの準備
6.3.2 Apollo Clientの設定
6.3.3 Queryコンポーネント
6.3.4 Mutationコンポーネント
6.4 認可
6.4.1 ユーザー認可
6.4.2 ユーザー識別
6.5 キャッシュ
6.5.1 フェッチポリシー
6.5.2 キャッシュの永続化
6.5.3 キャッシュの更新

7章 GraphQLの実戦投入にあたって
5,6章の続き
プッシュ通知を作る?

7.1 サブスクリプション
7.1.1 サブスクリプションの利用
7.1.2 サブスクリプションの処理
7.2 ファイルアップロード
7.2.1 サーバーでアップロードを処理する
7.2.2 Apollo Clientを使用した写真の新規投稿
7.3 セキュリティ
7.3.1 リクエストタイムアウト
7.3.2 データの制限
7.3.3 クエリ深さの制限
7.3.4 クエリの複雑さ制限
7.3.5 Apollo Engine
7.4 次の段階にすすむ
7.4.1 漸進的なマイグレーション
7.4.2 スキーマファースト開発
7.4.3 GraphQLイベント
7.4.4 コミュニティ
7.4.5 コミュニティのSlackチャンネル

付録A Relay IR各仕様解説
A.1 Global Object Identification
A.3 Input Object Mutations
A.4 Mutations updater