記事の内容
今回は、WebAPIとHTTP/2を学習する上でおすすめの良書と動画教材を紹介していきたいと思います。
目次
- 1 WebAPI
- 1.1 Web API: The Good Parts
- 1.2 Web APIの設計
- 1.3 Webを支える技術
- 1.4 Software Design (ソフトウェアデザイン) 2021年2月号
- 1.5 クリーンアーキテクチャとサーバレスで実装するWebAPI
- 1.6 Designing Web APIs: Building APIs That Developers Love (English Edition)
- 1.7 Spring Boot 2 応用: REST x Swagger UI、MyBatisからAWSへのデプロイまで
- 1.8 Designing APIs with Swagger and OpenAPI
- 2 HTTP/2
WebAPI
Web API: The Good Parts
Web APIの設計、開発、運用についての解説書で、定番本です。
内容はどれも基本的で、Web APIを開発するのなら絶対に知っておくべきという内容です。
API設計について、理論とその背景に加え、代表的なWebサービスでの実例を示して説明されているのが嬉しいですね。
これからWeb APIの設計をする時には、手元に置いておきたい一冊です。
Web APIの設計
本書は、著者Arnaud Lauretの長年のAPI設計経験を元に書かれた本です。
読者が得られること。
- APIの成り立ち
- 使いやすいAPIの作り方
- 可用性・発展性のあるAPIの設計方法
ただ、翻訳に関しては賛否がわかれそうです。
Webを支える技術
本書のテーマは,Webサービスの実践的な設計です。まずHTTPやURI,HTMLなどの仕様を歴史や設計思想を織り交ぜて解説します。
そしてWebサービスにおける設計課題,たとえば望ましいURI,HTTPメソッドの使い分け,クライアントとサーバの役割分担,設計プロセスなどについて,現時点のベストプラクティスを紹介します。
WebAPIを設計したい人、RESTについてシッカリと学びたい人にオススメの定番本です。
ただ、内容は少し古いので「HTTP/2」については触れられていません。
Software Design (ソフトウェアデザイン) 2021年2月号
本特集で取り上げるのは,外部に公開して世界中のユーザーを対象とするWeb APIです。
Web APIを目的・認証の有無で分類し整理したあとは、設計→開発→公開・運用のステップごとに押さえておくべき知識、知っておくと得するノウハウを紹介します。
併せて、Web APIの設計と開発で最重要とも言える「REST」の考え方についても詳解します。
クリーンアーキテクチャとサーバレスで実装するWebAPI
すでにある程度実装されているサンプルプログラムを通して、サーバレス開発とクリーンアーキテクチャの理解を深めます。
AWSの各種サービスを用いて、サーバーレスでREST APIを構築していきます。
Designing Web APIs: Building APIs That Developers Love (English Edition)
英語版です。
この本では開発者や技術責任者が、相互運用可能なAPIの設計、拡張、マーケティングに関する複雑な意思決定に対応する方法について学びます。
プライベートとパブリックのAPI設計、開発、デプロイ、監視、デプロイといった様々なな考慮事項について勉強したい方には、この本を強くお勧めします。
Spring Boot 2 応用: REST x Swagger UI、MyBatisからAWSへのデプロイまで
Spring Bootアプリケーションをいくつか作成しながら、他ツールやクラウド(AWS)との連携について解説しています。
REST APIも、以下のように作成していきます。
- ドキュメントの作成方法を確認する
- 学習方法について
- CRUD(クラッド)操作ができるようにする
- CRUDを自作する
この本は、「Kindle Unlimited」の30日間無料体験で読むのがオススメです ^^
無料体験後も、200万冊以上の本を月額980円で読むことができる、読書好きにはもってこいのプランです。
Designing APIs with Swagger and OpenAPI
英語版です。
SwaggerとOpenAPIによるAPI設計では、デザインファーストのパラダイムを紹介し、OpenAPIとSwaggerを使用してRESTful APIを記述および設計するためのベストプラクティスを学びます。
HTTP/2
より高速に配信したい人のためにHTTP/2の紹介もします。
HTTP/2は現行のHTTPと比べて、ストリームやサーバープッシュ、ヘッダー圧縮や優先順位付けをサポートすることで、速度、セキュリティ、効率性を大幅に向上させます。
詳解HTTP/2
本書ではHTTP/2の恩恵を最大限に受けるために、知っておくべきことを詳細に開示してくれます。
内容は素晴らしいのですが、翻訳はイマイチです。
Real World HTTP 第2版 ―歴史とコードに学ぶインターネットとウェブ技術
本書はHTTPに関する技術的な内容を一冊にまとめることを目的とした書籍です。
HTTPが進化する道筋をたどりながら、ブラウザが内部で行っていること、サーバーとのやりとりの内容などについて、プロトコルの実例や実際の使用例などを交えながら紹介しています。
GoやJavaScriptによるコード例によって、単純なHTTPアクセス、フォームの送信、キャッシュやクッキーのコントロール、Keep-Alive、SSL/TLS、プロトコルアップグレード、サーバープッシュ、Server-Sent Events、WebSocketなどの動作を理解します。