ohakutsu
@ohakutsu

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

GraphQLのクライアントはApolloとurqlのどちらがおすすめですか

最近、GraphQLのクライアントに、urqlがあるのを知りました。Apolloはネットで多くの記事があるのに比べ、urqlはほとんど記事がありません。
そこで、Apolloとurqlはどちらがおすすめですか。

また、現在、Apolloまたはurqlを使っているのであれば、それを選んだ理由も知りたいです!

0

1Answer

僕もそんなに詳しいわけではないですが、以下の点を考え適切な方を選べば良い思います。

  1. シンプル vs カスタマイズ性の高さ
  2. GraphQLのクライアントとしてのみ扱うか vs GraphQLをインターフェースとして用いたいか

1については、ドキュメントを読んだ感じ、キャッシュ機構やセットアップなどがurqlの方がかなりシンプルで、導入、簡単なGraphQLリクエストなら簡単に実装できてしまいそうです。しかしその一方でApolloClientはカスタマイズ性が高く、各企業の環境や要件に柔軟に対応が行えます。ただカスタマイズ性が高い=自分たちで考えたり実装する必要があるものも多い、ということとほぼ同義なので、導入コストやメンテナンスコストは当然上がってしまいます。

また、2については、ApolloClientはGraphQLサーバーだけではなく、REST APIやローカルステートをGraphQLクエリとして扱うようなことも可能です。これはGraphQLクエリを一種のインターフェースとして扱うことを可能にしています。しかしurqlは見た感じそのような機構はなさそうです。

以上のことから、手軽に単純にGraphQLを扱いたいだけであればurql、プロダクトの要件によってカスタマイズを行なったり、GraphQLをインターフェースとするアーキテクチャを採用したい場合はApolloClient、という選択で良さそうです。

2Like

Comments

  1. @ohakutsu

    Questioner

    なるほど、ありがとうございます!

Your answer might help someone💌