* GraphQLというものの立ち位置 [#e72e1bbb]
GraphQLという技術がある、この技術について思うことをまとめていこうと思う

** 以前のフロントエンドとバックエンドの開発の分業 [#b8caf937]
これまで、open apiがでてきてたが、サーバサイドでspring-foxが提供するアノテーションンを使えば、サーバサイド主体で、インターフェースのHTMLによる設計書が生成されてるので、もてはやされていたというのが、2021年まであったように思う。

サーバサイドとフロントエンドで、OPENAPIをインターフェースとした分業があったように感じる。

しかし、主導権はサーバーサイドが強く持っていたのではないだろうか?

フロントエンドがどちらかというと、サーバーサイドのAPIの提供にひきづられていたように感じる。

** BFFな時代 [#h27cc347]
しかし、2022年からは フロントエンドが必要としているものは、データであって、
APIのエンドポイントがどうだとかは、気にしなくてもよい仕組みにしたいという要望があったのだとおもう。 

それをかなえるのがGraphQLであり、バックエンドと、フロントエンドの間を取り持つ立ち位置に存在しているのではないかと考えている。

*** BFF(Backends For Frontends)の説明 [#d51f0fd6]
https://atmarkit.itmedia.co.jp/ait/articles/1803/12/news012.html

いろいろ解説があるけれども、自分は、GraphQLのことだと思っている。


*** ZOZOでの取り組み [#jd8cf7f5]
https://techblog.zozo.com/entry/zozo-aggregation-api-bff

自分がいま、理解しているGraphQLというものの立ち位置は、そういったところだ。


* コード生成についても興味があり、調査しようと思っているサイト [#e5235fee]

** dotansimha/graphql-code-generator [#e71bbadf]

GraphQL Schemaを用意してあれば、いろいろ生成しちゃう的なものらしい

https://github.com/dotansimha/graphql-code-generator

*** graphql-code-generatorを動かせるデモも用意されている [#s73bd0af]
https://www.graphql-code-generator.com/#live-demo

*** TypeScript Operations [#f904e3b7]

** graphql-typeop [#oe824600]

https://github.com/glutengo/graphql-typeop

TypeScriptでGraphQLの戻り値関連の生成をやっちゃうよ的なもので、上記のgraphql-code-generatorを利用しているみたい。



https://www.graphql-code-generator.com/plugins/typescript-operations

https://www.graphql-code-generator.com/


https://relay-compiler-repl.netlify.app/

https://github.com/Urigo/graphql-cli

** spring-graphql [#nb75911c]
2021年12月に version 1.0.0 になった
https://docs.spring.io/spring-graphql/docs/1.0.0-SNAPSHOT/reference/html/

自分が興味があるのは、

@GraphQlRepository

を使った自動登録の仕組みと、そのコードを生成するツールは何か?ということが興味がある。

*** サンプル [#cce1d205]
https://github.com/spring-projects/spring-graphql/tree/main/samples

** 日本語での2018年の記事 [#z8606706]

たぶん、FacebookのSDKをつかった、サンプルなのでは?


https://techblog.yahoo.co.jp/advent-calendar-2018/create-springbook-graphql-api/

*** サンプル [#zd448a59]

https://github.com/klowa/example-graphql-api


** Spring BootでGraphQLを試した [#z94bbcc7]
2019年11月の記事だ

https://qiita.com/kurukuruz/items/b948e77a56b946864a86

** apploというGRAPHQLをターゲットしてる会社のブログ [#g3356ee6]
https://www.apollographql.com/


デプロイ後の調整についての見識が深いように感じられる

https://www.apollographql.com/blog/announcement/announcing-managed-federation-265c9f0bc88e/


** GraphQL Pokémon を使って楽しく学ぶ GraphQL クエリ [#sb376710]
https://kakakakakku.hatenablog.com/entry/2019/12/30/135420

** Altair GraphQL Client [#w10d9fca]
chromeのプラグインで、RESTサーバのテストで使うPOSTMANのように、GRAPHQLのテストができるツール


https://altair.sirmuel.design/

*** Altair GraphQL Client を解説しているサイト [#zf02206b]
https://itnews.org/news_contents/product-altair


** GraphQL Network Inspector [#uaeb7e77]
chromeのプラグイン
https://chrome.google.com/webstore/detail/graphql-network-inspector/ndlbedplllcgconngcnfmkadhokfaaln?utm_source=chrome-ntp-icon

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS