環境構築から、型ヒントによる検証・依存性注入・SQLAlchemy 2.0・認証と認可・テスト、そして Docker での本番デプロイまで。全20レッスンで 1 つのタスク管理 API を最初から最後まで作りきります。コードとコマンドの出力は、すべて Python 3.13 / FastAPI 0.141 で実際に動かしたものです。
全20レッスンを5つの章に分けています。第1章から順に進めるのがおすすめですが、 気になるところだけ拾い読みしてもかまいません。 ※ FastAPI はブラウザ内で実行できないため、第1回で作るプロジェクトで試してください。
仮想環境を作って最初のエンドポイントを立て、型ヒントがそのまま検証とドキュメントになる仕組みを確かめます。最後は、ルートの登録順で結果が変わる理由まで理解できるようになります。
クエリ・ボディ・レスポンスという、API の入口と出口をひととおり扱います。最後は async def と def の違いを実測し、どちらで書くべきかを自分で判断できるようにします。
main.py を分割し、共通処理を依存として書き、入力の検査とエラーの形を整えます。ここで作る土台の上に、後半のデータベース・認証・テストが全部乗ります。
SQLAlchemy 2.0 でデータを保存し、CRUD・リレーション・検索・ファイル添付まで実装します。N+1 問題は、実際に SELECT の本数を数えて確認します。
JWT 認証と認可、CORS、バックグラウンド処理、そしてテストを入れます。最後は設定を環境変数に追い出し、Alembic と Docker で本番に出せる形にします。
全20レッスンを終えたら、次はこの API をコンテナで動かす Docker へ。メンバーシップで全コースが解放されます。