API > GraphQL
2020-05-16 (土) 公開
GraphQL について学びましょう!
キーワード
- API
- GraphQL
GraphQLとは? †
[[RESTful] APIに代わる新しいAPI。Facebookで開発されている。
- GraphQL - Google 検索
https://www.google.com/search?q=GraphQL
- GraphQL - Wikipedia
https://ja.wikipedia.org/wiki/GraphQLGraphQL(グラフQL)は、APIのために作られた、データクエリとデータ操作のための言語と、保存されたデータに対してクエリを実行するランタイムである。
GraphQLは、2012年にFacebookの内部で開発され、2015年に公開された。
ウェブAPIの開発に、RESTやその他のWebサービスと比較して、効率的、堅牢、フレキシブルなアプローチを提供する。
GraphQLでは、クライアントが必要なデータの構造を定義することができ、サーバーからは定義したのと同じ構造のデータが返される。したがって、必要以上に大きなデータが返されるのを防ぐことができる。ただし、これはクエリ結果のウェブキャッシュの効果に影響を与える。
また、柔軟性と豊かな表現が可能なクエリ言語は複雑さを加えるため、シンプルなAPIには適さない可能性もある。GraphQLは、型システム、クエリ言語、実行セマンティクス、静的な検証、型イントロスペクションから構成される。
GraphQLは、読み込み、書き込み(ミューテーション)、データのサブスクリプション(リアルタイム更新機能で、一般にはWebHooksで実装される)をサポートする。
主要なGraphQLのクライアントとしては、Apollo ClientとRelayがある。GraphQLサーバーは複数の言語で利用可能であり、Haskell、JavaScript、Perl、Python、Ruby、Java、C#、Scala、Go、Elixir、Erlang、PHP、R、Clojureで書かれたものがある。
公式サイト †
- GraphQL | A query language for your API
https://graphql.org/
参考書 †
初めてのGraphQL ―Webサービスを作って学ぶ新世代API Eve Porcello オライリージャパン 2019-11-13 ¥2860 |