370 Views
June 05, 20
スライド概要
GraphQLの基本を簡単に解説!
https://graphql.org/
「楽しく楽にcoolにsmartに」を理想とするprogrammer/philosopher/liberalist/realist。 好きな言語はClojure, Haskell, Python, English, français, русский。 読書、プログラミング、語学、法学、数学が大好き! イルカと海も大好き🐬
⼊⾨ GraphQL
lagénorhynque (defprofile lagénorhynque :id @lagenorhynque :reading "/laʒenɔʁɛ̃ k/" :aliases [" "] カマイルカ🐬 :languages [Clojure Haskell English français] :interests [programming language-learning law mathematics] :commits ["github.com/lagenorhynque/duct.module.pedestal" "github.com/lagenorhynque/duct.module.cambium"] ["github.com/japan-clojurians/clojure-site-ja"]) :contributes
とは 2. クエリ⾔語 3. スキーマ⾔語 4. 便利な機能 5. 便利なツール/ライブラリ 1. GraphQL
とは 1. GraphQL
GraphQL API に対するクエリ⾔語とクエリを実現するための実 ⾏エンジンについての仕様 cf. GraphQL Speci cation
2. クエリ⾔語
操作(operation) query mutation subscription
3. スキーマ⾔語
GraphQL SDL (schema de nition language) type scalar enum interface union input
4. 便利な機能
クライアント側で便利な機能 エイリアス(alias)によるフィールドの別名指定 フラグメント(fragment)によるフィールドセット の再利⽤ 変数(variable)によるクエリのパラメータ化
5. 便利なツール/ライブラリ
クライアント GUI GraphiQL GraphQL Playground Altair etc.
代表的なフレームワーク Apollo GraphQL Relay etc.
パフォーマンス/セキュリティ関連 のライブラリ DataLoader 実装 cf. superlifter: Clojure graphql-depth-limit graphql-validation-complexity graphql-query-complexity graphql-cost-analysis etc.
cf. How to GraphQL > Security
Further Reading GraphQL | A query language for your API: サイト 公式 GitHub ⼊⾨書 ⽇本語版: 『初めてのGraphQL』 Learning GraphQL: chentsulin/awesome-graphql: Awesome list of GraphQL & Relay: awesome list
How to GraphQL - The Fullstack Tutorial for GraphQL: チュートリアル集 バックエンド: Node.js, Elixir, Ruby, Java, Python, Scala フロントエンド: React + Apollo, React + urql, etc. GitHub GraphQL API v4 | GitHub Developer Guide: public GraphQL API な の代表例
「GraphQL」徹底⼊⾨ ─ RESTとの⽐較、API・ フロント双⽅の実装から学ぶ - エンジニアHub Lacinia: Clojureの代表的なGraphQL実装 Lacinia-Pedestal : Clojure Lacinia GraphQL API - Qiita 参考 の してみた で 開発