書籍タイトル:Web API: The Good Parts
読む時間:08:32
はじめに
Qiitaで「エンジニアにおすすめの書籍」を探していて出会った一冊です。
これまで読んできたWeb系のテキストは、APIをひとつのトピックとしてざっくり扱っているものが多かったのですが、本書はより細かい粒度で「APIとは何か」「API設計の哲学」について丁寧に解説されていました。
おかげで、これまで断片的だった知識が整理され、APIに関する理解を一層深めることができました。
📚 本書の詳細情報
印象に残ったポイント
1. APIを美しく設計しよう!
ここでいう「美しい」とは見た目の話ではなく、
「使いやすい・変更しやすい・堅牢である・そして人に見せても恥ずかしくない」ことを意識する、という意味です。
もちろん、自分だけで一から設計思想を生み出すのは簡単ではありません。
ですが、すでに世の中にはRESTfulなど、多くの研究者や実務者によって発表された設計思想や論文があります。
まずはそうした知見から学ぶことが、API設計を「美しく」する第一歩になるのではないでしょうか。
2. 他社事例を活用しよう
企業が公開しているAPIを参考にしながら、「URL設計・パラメータ・リクエストBody・使用する英単語の選び方・バージョン管理方法」などを検討するのも有効な手段です。
本書では「ProgrammableWeb」という、世界中の企業が公開しているAPIをまとめた有名なサイトが紹介されていましたが、残念ながら2022年に運営停止となってしまいました。
そのため現在は、他社のAPIを調べる際には地道に探していく必要があります。
まずは同じ業界の中で、知名度の高い企業が提供しているAPIを参考にしてみるのが良いスタートになるでしょう。
3. HTTP周りは絶対抑えておこう!
世の中の多くのサービスは、HTTPをベースにAPIを設計しています。そのため、HTTPの知識はAPI設計において基本となります。
・HTTPのメソッドを活用してエンドポイントを設計する
・ステータスコードを活用してクライアントに状況を伝える
・ヘッダーを使って認証や認可を管理する
といった形で、既存のHTTP仕様を最大限に活用することで、通信がスムーズになり、より多くの人に使ってもらえるAPIを設計することができます。
そのため、API設計に入る前、WebやHTTP関連知識は中途半端でなく、しっかり系統的に頭の中に抑えておいたほうがよいと思います!
例えば、以下のテキストもおすすめです!
まとめ・感想
本書は2014年出版のため、一部の用語や時代背景の説明は少し古く感じられる部分もあります(XがまだTwitterだった時代など)。
しかし、API設計の思想については、今の時代でも十分通用する内容だと感じました。
今回は特にAPIに絞って重点的に学習できたので、著者の方には感謝の気持ちでいっぱいです。