学習ロードマップ

API 設計のベストプラクティス

REST / GraphQL / RPC を横断して、保守しやすく拡張しやすい API を設計するためのロードマップ。既存 API を整える視点も含む。

Cloudflare Workers 実践ガイド 〜 エッジで実現するWebアプリケーションの設計・実装・運用 〜 Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装 マスタリングAPIアーキテクチャ : モノリシックからマイクロサービスへとアーキテクチャを進化させるための実践的手法 現場のPython──Webシステム開発から、機械学習・データ分析まで Spring Boot 3 プログラミング入門
SCROLL TO BEGIN

このロードマップが扱うもの

API API / // API

このロードマップの全体像

このロードマップは、公開 API や社内 API の設計に責任を持ちたいバックエンド / プラットフォームエンジニアを対象にしています。学び終えたときには、リソース設計、エラー/バージョニング、認証/認可、ドキュメントと契約まで、スタイルを問わずチームで合意できる API を設計・レビューできる状態を目指します。

学習ステップ

1. API の目的とスタイル選定: REST / GraphQL / gRPC / Webhook の特性と、ユースケースごとの向き不向きを整理します。 2. リソースとユースケースのモデリング: ドメイン駆動の発想で、URI や型の切り方、集約単位を決める訓練をします。 3. エラー・ページング・フィルタの定型化: エラーコード体系、ページングの種類、クエリパラメータ規則を標準化し、クライアントの書きやすさを上げます。 4. バージョニングと後方互換性: 破壊的変更の避け方、deprecation 運用、スキーマ互換性チェックをフローに組み込みます。 5. 認証・認可・レート制限: OAuth2/OIDC、スコープ、テナント分離、レート制限と冪等性設計を実装レベルで押さえます。 6. ドキュメントと契約のメンテナンス: OpenAPI / スキーマ、例示、変更履歴、コントラクトテストを継続的に回す仕組みを作ります。

注意点と周辺知識

API は「書く」より「変えない / 変え方を決める」方が難しい領域です。初期にドメインモデルが曖昧だと、後から URI やフィールドを直すコストが跳ね上がります。認可やレート制限を途中から足すのも大仕事なので、最初から横断的な枠組みとして設計する必要があります。周辺では、HTTP の基礎、OAuth2/OIDC、DB スキーマとドメイン駆動設計、OpenAPI / JSON Schema、テスト戦略、API ゲートウェイと BFF パターン、ロギング/可観測性を並行して押さえておくと、スタイル選択と運用判断が具体的になります。

ロードマップ

6 つのステップで読み進める

  1. 01
    ステップ 01 Cloudflare Workers 実践ガイド 〜 エッジで実現するWebアプリケーションの設計・実装・運用 〜
    Cloudflare Workers 実践ガイド 〜 エッジで実現するWebアプリケーションの設計・実装・運用 〜
  2. 02
    ステップ 02 Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで
    Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで
  3. 03
    ステップ 03 APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装
    APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装
  4. 04
    ステップ 04 マスタリングAPIアーキテクチャ : モノリシックからマイクロサービスへとアーキテクチャを進化させるための実践的手法
    マスタリングAPIアーキテクチャ : モノリシックからマイクロサービスへとアーキテクチャを進化させるための実践的手法
  5. 05
    ステップ 05 現場のPython──Webシステム開発から、機械学習・データ分析まで
    現場のPython──Webシステム開発から、機械学習・データ分析まで
  6. 06
    ステップ 06 Spring Boot 3 プログラミング入門
    Spring Boot 3 プログラミング入門

第 1 章

Cloudflare Workers 実践ガイド 〜 エッジで実現するWebアプリケーションの設計・実装・運用 〜

  1. Cloudflare Workers 実践ガイド 〜 エッジで実現するWebアプリケーションの設計・実装・運用 〜

    Cloudflare Workers 実践ガイド 〜 エッジで実現するWebアプリケーションの設計・実装・運用 〜
    この章の 1 冊 Cloudflare Workers 実践ガイド 〜 エッジで実現するWebアプリケーションの設計・実装・運用 〜

    Cloudflare Workers エコシステムを使いエッジで設計・実装・運用できるようになる

    この本で身につくこと
    • V8 Isolateによるゼロコールドスタートの仕組みと、CPU・メモリ・実行時間の制約を踏まえたエッジ向け設計判断ができる
    • D1・KV・R2・Durable Objectsの整合性モデルと用途の違いを理解し、データ特性に応じたストレージを選択できる
    • REST API・GraphQL APIをCloudflare Workers上で構築し、本番デプロイ・段階的ロールアウト・ロールバックまで実施できる
    • Next.js(OpenNext)を使ったフルスタック開発と、WebSocketを用いたリアルタイム通信をエッジで実装できる

    想定読者: Webアプリのパフォーマンス改善やサーバーレス移行を検討している中級〜上級のバックエンド・フルスタックエンジニア

    本の詳細を見る →
  2. Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで

    Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで
    この章の 1 冊 Web API開発実践ガイドーーREST/gRPC/GraphQLからテスト、セキュリティまで

    REST・gRPC・GraphQLの設計から、テストとセキュリティまで網羅する

    この本で身につくこと
    • OpenAPIを活用したREST API設計の要素と、スキーマ駆動開発の進め方
    • gRPCの仕組みとProtocol Buffersの基礎、API設計時のポイント
    • TypeScript + Apollo ServerによるGraphQLサーバサイド実装と、urql・graphql-codegenを使ったクライアント側開発
    • GraphQLアプリケーションのDatadogモニタリング・Sentryエラートラッキングによる本番運用手法

    想定読者: Web APIを実務で開発・運用しており、複数のAPIスタイルを比較検討したいバックエンド・フルスタックエンジニア

    本の詳細を見る →
  3. APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装

    APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装
    この章の 1 冊 APIハンズオンラーニング : 手を動かして学ぶAPIの設計と実装

    7つのAPIスタイルを天気予報サービス実装で比較・習得する

    この本で身につくこと
    • REST・GraphQL・Atom(Webフィード)・gRPC・webhook・WebSocket・RabbitMQの7スタイルを同一サービスで実装し、それぞれの適用場面を判断できる
    • 各APIスタイルの利点と欠点をアーキテクチャ設計の観点から説明できる
    • HTTPの進化(HTTP/1.1からHTTP/2・HTTP/3)がAPIスタイルの選択に与える影響を理解できる
    • GitHub CodespacesおよびDockerを使った実行可能な開発環境を素早く立ち上げられる

    想定読者: REST以外のAPIスタイル(gRPC・GraphQL・WebSocket・webhookなど)を実装レベルで理解したいバックエンドエンジニアおよびAPIを設計する立場の開発者

    本の詳細を見る →
  4. マスタリングAPIアーキテクチャ : モノリシックからマイクロサービスへとアーキテクチャを進化させるための実践的手法

    マスタリングAPIアーキテクチャ : モノリシックからマイクロサービスへとアーキテクチャを進化させるための実践的手法
    この章の 1 冊 マスタリングAPIアーキテクチャ : モノリシックからマイクロサービスへとアーキテクチャを進化させるための実践的手法

    REST API 設計からマイクロサービス移行まで、APIアーキテクチャ全体を体系的に習得する

    この本で身につくこと
    • OpenAPI仕様を用いたREST API設計と、gRPC・GraphQLとの使い分けの判断軸
    • APIゲートウェイ(外部トラフィック制御)とサービスメッシュ(内部通信制御)の役割分担を設計レベルで説明できる
    • カナリアリリース・ブルーグリーンデプロイ・トラフィックミラーリングなど、デプロイ戦略とリリース戦略の違い
    • 脅威モデリングの手法と、OAuth2・OIDC・SAMLを用いた認証認可設計の基本構成

    想定読者: モノリシックシステムのマイクロサービス化を検討している設計者・チームリード、またはAPIゲートウェイやサービスメッシュの選定基準を整理したいバックエンドエンジニア

    本の詳細を見る →
  5. 現場のPython──Webシステム開発から、機械学習・データ分析まで

    現場のPython──Webシステム開発から、機械学習・データ分析まで
    この章の 1 冊 現場のPython──Webシステム開発から、機械学習・データ分析まで

    実務レベルのPythonノウハウをWeb開発からデータ分析まで横断的に習得する

    この本で身につくこと
    • 型ヒントとpytestを組み合わせたPython実務品質のテスト・型安全開発の基礎
    • 構造化ログの設計とリリース自動化による運用可観測性の確保
    • Django REST frameworkとGraphQL・FastAPIの使い分けとORM最適化の判断基準
    • pandasのパフォーマンスボトルネックを特定し、NumPyベクトル化で改善する手法

    想定読者: Python基礎を習得済みで、実務品質のコードを書けるようになりたい開発者。経験2〜3年程度でDjango/FastAPIやpandasを業務で使い始めた、またはこれから使う予定のエンジニア

    本の詳細を見る →
  6. Spring Boot 3 プログラミング入門

    Spring Boot 3 プログラミング入門
    この章の 1 冊 Spring Boot 3 プログラミング入門

    Spring Boot 3をJDK17対応でゼロからハンズオン形式で習得する

    この本で身につくこと
    • Springのbean定義・依存性注入(DI)コンテナの仕組みとアノテーション操作を説明できる
    • Thymeleaf・Mustache・GroovyテンプレートをSpring MVCと組み合わせて画面を構築できる
    • Spring Data JPAとCriteria APIを使ったデータベースアクセス(CRUD・クライテリア検索)を実装できる
    • バリデーションアノテーション(@NotBlank/@Min/@Pattern等)とカスタムバリデータを実装できる

    想定読者: JavaのOOP基礎を一通り理解しており、SpringフレームワークをベースとしたWebアプリ開発に初めて踏み込むエンジニア。転職・学習中でSpring Bootの全体像を一冊で把握したい人にも適する。

    本の詳細を見る →