Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Protocol Buffers で Web APIのスキーマ駆動開発がしたい

t0yohei
November 09, 2019

Protocol Buffers で Web APIのスキーマ駆動開発がしたい

t0yohei

November 09, 2019
Tweet

More Decks by t0yohei

Other Decks in Technology

Transcript

  1. Web API って • HTTP(S) のインターフェースで提供される API • SSKDs(Small Set

    of Known Developers) ◦ Google Map の Geo API など • LSKDs(Large Set of Unknown Developers) ◦ サービス内でフロントエンドサーバーとバックエンドサーバーがやり取 りするための API など • REST, SOAP, gRPC, GraphQL などがある
  2. Protocol Buffers(protobuf) って? • Google が開発してオープンソース化したスキーマ定義言語 • gRPCでよく使われている • proto

    ファイルに実装した定義を元に、コードの自動生成が可能 • 読みやすい • 今さらProtocol Buffersと、手に馴染む道具の話 • Web API に秩序を与える Protocol Buffers / Protocol Buffers for Web API
  3. protobuf を使うとどうなるのか • API の振る舞いを proto ファイルに定義 • サーバーサイド・フロントエンドの実装で基盤となるコードを自動生成 •

    詳細な実装を追加 • 実装を変更する場合は proto ファイルを修正 • proto ファイルが仕様書になる