0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

GraphQLに触れてみた

Posted at

PCローカルでGraphQLを試す

背景

僕は現在SEとしてフルスタックな開発業務推進&実務をやっています。

自社の営業サイドから仕事が回ってくるとき、

  • フワッとした要件定義でやっちゃえ、とにかく動かしちゃえ
  • 仕様・設計バグがあってもアジャイルで改善すればいいんじゃね?(誤用)

という開発風土があるため、フロントエンド周りの改修が多発し、結合度高めなREST APIも改修が発生しやすいという状況があります。

そこで、フロントエンドの改修頻度高めを前提としたうえで、API改修頻度の方を下げられないか、と今回はじめてGraphQLを試してみました。

手順

windows10で実施。

  1. Apollo Serverインストール
> mkdir C:\Works\Projects\gqlserver
> cd C:\Works\Projects\gqlserver
> npm init --yes
> npm i apollo-server graphql
  1. 実装

gqlserver\src\index.js を作成(中身は後掲載)

  1. 起動
> cd C:\Works\Projects\gqlserver
> node .\src\index.js
  1. 動作確認

VSCode拡張機能のThunder Clientを使用

結果

実装、起動、動作確認を1shotにした図が以下です。

ApolloServer2.png

① データ取得だからGETだと思い込み「何で動かないんだGraphQL...」とそこそこ悩んだ時間があり心が挫けそうになりました。

(ここを読んでいる方にはそんな心配はありませんね。congratulation!!)

② index.jsの実装

@ozaki さんの「【now】ApolloServerを無料でサーバにデプロイする」より。
ありがとうございます。

③ server起動

結論

今回はじめてGraphQLを動かしましたが、正直REST APIとの差をまだ感じられていません。

REST APIからGraphQLに移行したところで、アジャイル開発(誤用)なAPI改修工数削減に効果があるのかが理解できていません。
(ただ単に社内のAPI設計が不十分なだけで、設計強化でなんとかなる内容なのかもしれません)

継続して学習が必要です。

以上

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?