kazu22002の技術覚書

PHPer, Golang, AWS エンジニアの日々

「初めてのGraphQL」読んだ

GraphQLを触っているので、書いました。ざっくり読んだ感想です。

初めてのGraphQL ―Webサービスを作って学ぶ新世代API

初めてのGraphQL ―Webサービスを作って学ぶ新世代API

読む前のイメージ

まずGraphQLを触ったことがないため、webの情報からのイメージは「サーバーサイドではなくフロントエンドでデータ取得の内容を決めることができる仕組み」で画期的なもの。と思ってます。

触ってないから難易度や便利さはわかっていない状態で、便利そうだなぁー。ぐらいなイメージです。

読んでみて

グラフ理論ってなに?というところから始まってしまい、イメージと違ったかな。と場違い感を感じつつ、これができるのか。これ求めてるやつなのかな。と思いましたが、3章あたりから実際のコマンドの説明になっていき、イメージと少しずつ繋がっていきました。

query, mutation, schema データについてできることの説明では個人的にSQLに置き換えて理解するように分解していき、読んでいきました。

query - データ取得

mutation - データ追加、更新

subscription - データの購読(リアルタイム更新)

subscription便利そう。

スキーマ設計は実際に作るもののドメインをちゃんと考慮してから再度読み直すと思いますが、typeは少なく自分で細かく作っていく感じに見えますね。

個人的に不思議だった章はサーバーについての5章になります。

サーバーの実装?書かなくてもいけるんじゃね。というイメージだったため、やっぱり書く必要があるんですかね。なにかライブラリを置くだけでいけるかと思ってたけど違うかな。

とりあえず実際に使ってみるまでわからないから、流し読み。

クライアント部分も読んだけど、認証は必要になったときにちゃんと読む。

あとは実践部分の章は、画像とかファイルアップロードも実装できるのはかなり意外でありやってみたい内容でした。

初めてのGraphQLのタイトルの通り、どういうことを解決する仕組みの説明や基本的なデータ処理とスキーマの説明になっています。

個人的にやってみないと理解できない頭をしているため、サンプルコードが多く載っている本が好みであり、クエリが多く載っていたのが高評価です。

まだコードを実際に試していないためどこで詰まるかわかりませんが、実際に触ってみて困ったらまた読んでみます。

GraphQLサンプル実践

github APIで実践できるため、簡単に試したい人は触ってみるのが良いと思います。

docs.github.com

雑記

全体を1時間程度でざっくり読んで、概要を把握した感じです。。

あとは興味をもった部分をしっかり読んで、2時間ぐらいです。

ちゃんと実践すると2,3日かかりそうですが、実践はアプリケーションを作りながら理解していこうと思っています。

スキーマ設計が一番必要な内容でしたが、後半が混乱しそうな内容だったので型の部分を重点的に読んでみました。

サーバー実装はまた今度興味が出た時にやるとして、クライアントの部分を重点的に読んでいきます。

さぁ、お仕事をしましょうか。