はじめに API設計のアーキテクチャスタイルには、REST API、GraphQL、gRPC、tRPCなど、複数の選択肢があります。 私はこれまでに、実務や個人開発でREST API、gRPC、tRPCを使用してきました。その上で今回は、それぞれの特徴と開発の流れについて紹介します。さらに、それぞれのメリット・デメリットを挙げ、特定のケースに適した選択について考察してみました。 API設計のアーキテクチャスタイルの選択に悩んでいる方に、少しでも参考になれば幸いです。 REST API RESTとは まずRESTとはシンプルなWEB全体のアーキテクチャスタイルのことです。RESTには4つの原則があり(6つとも言われている)それらを満たすもののことをRESTfulと言います。 ※それぞれの原則の詳細は省略します。 統一インターフェース アドレス可能性 接続性 ステートレス性 REST APIは