5章設計変更をしやすいWeb APIを作る
Web APIは通常のウェブサービスと同様に一度公開したらそれで終わりではなく、ずっと公開していかなければ意味がありません。そして公開を続けるうちには、公開当初には想像しなかったような使われ方をされるようになったり、新たな機能要件を追加しなければならなくなったりすることも少なくありません。また、何らかの理由によりAPIの公開を止めなければならないこともあるでしょう。
本章では、その際に直面する大きな課題であるAPIの変更、および廃止に関する問題を取り扱います。
5.1 設計変更のしやすさの重要性
Web APIは何らかのアプリケーションのインターフェイスとしての役割を持ちます。そしてそのアプリケーションは、一度公開されたらずっと同じというわけにはなかなかいかず、機能の強化やバグの修正、あるいは場合によっては機能の廃止など、さまざまな状況に応じて変化していくものです。そしてその際には、そのアプリケーションの、他のアプリケーション向けのインターフェイスであるWeb APIもその影響を受けて変更をしなければならない場合があります。もちろん、サービスのちょっとした見た目の変化や、コンテンツに影響があっても、コンテンツの形式そのものに影響がないケースではAPIは更新する必要がありません。しかしデータの形式が変わったり、情報の検索に追加でパラメータが必要になったり、といった場合にはAPIの変更が必要になってきます。
たとえばテキストとして返されるデータの内容がより詳細になるとか、内部のアルゴリズムのアップデートにより検索の精度がより向上したなどの場合は、同じAPIを叩いた場合に返ってくるデータの内容は(多くの場合は改善される方向に)変化するでしょうが、データ形式が変化しないのでAPIの仕様変更は必要ありません。ウェブサービスの運営では、こうした形式は変わらないけれども内容がより改善される、といったことは日々発生します。 ...