Python

モダンPython実践 #6 テストとデプロイ — pytest、Docker、Railway/Fly
読了 8分

モダンPython実践 #6 テストとデプロイ — pytest、Docker、Railway/Fly

pytest + httpx で FastAPI の統合テスト、依存性オーバーライドで分離、Docker のマルチステージビルド、Railway/Fly クラウドデプロイまで整理します。

モダンPython実践 #5 非同期とバックグラウンドタスク
読了 7分

モダンPython実践 #5 非同期とバックグラウンドタスク

async ルートのポジション、BackgroundTasks でレスポンス後の処理、外部キュー (Celery、ARQ) が必要になる境界、そして同期ライブラリと安全に混ぜる方法を整理します。

モダンPython実践 #4 認証 — OAuth2 パスワードフロー + JWT
読了 7分

モダンPython実践 #4 認証 — OAuth2 パスワードフロー + JWT

パスワードハッシング (argon2/bcrypt)、OAuth2 パスワードフロー、JWT の発行 / 検証、そして current_user 依存性できれいに解く認証パターンを整理します。

モダンPython実践 #3 DB 連携 — SQLAlchemy 2.x + Alembic
読了 7分

モダンPython実践 #3 DB 連携 — SQLAlchemy 2.x + Alembic

SQLAlchemy 2.x の新スタイル — Mapped/mapped_column、async セッション、FastAPI の依存性注入との結合、Alembic のマイグレーションまで整理します。

モダンPython実践 #2 ルーティング、Pydantic モデル、依存性注入
読了 6分

モダンPython実践 #2 ルーティング、Pydantic モデル、依存性注入

APIRouter でルート分離、Pydantic v2 スキーマで入出力を定義、Depends で共通ロジックをきれいに解くパターンまで整理します。

モダンPython実践 #1 FastAPI のはじめ方とセットアップ
読了 7分

モダンPython実践 #1 FastAPI のはじめ方とセットアップ

なぜ FastAPI なのか、uv で最初のプロジェクトをセットアップ、Hello FastAPI、OpenAPI/Swagger UI の自動生成までを一カ所に整理します。

モダンPython上級 #7 性能 — cProfile、py-spy、メモリプロファイリング
読了 8分

モダンPython上級 #7 性能 — cProfile、py-spy、メモリプロファイリング

遅い Python コードを見つけて直す道具箱 — timeit、cProfile、py-spy、line_profiler、memray、そしてよくある最適化パターンまで整理します。

モダンPython上級 #6 typing 上級 — Variance、ParamSpec、Self、overload
読了 8分

モダンPython上級 #6 typing 上級 — Variance、ParamSpec、Self、overload

中級 typing の次の段階 — covariance/contravariance、ParamSpec と Concatenate、Self、TypeGuard/TypeIs、@overload まで整理します。

モダンPython上級 #5 GILと並行性 — threading vs multiprocessing vs asyncio
読了 8分

モダンPython上級 #5 GILと並行性 — threading vs multiprocessing vs asyncio

GIL の正体、threading/multiprocessing/asyncio という 3 つの道具のポジション、そして Python 3.13~3.14 の free-threaded ビルド (PEP 703/779) までを一カ所に整理します。

モダンPython上級 #4 非同期の深さ — イベントループ、gather/wait、async generator
読了 7分

モダンPython上級 #4 非同期の深さ — イベントループ、gather/wait、async generator

中級の入門の次の段階 — イベントループの実際の動作、Future と Task の違い、gather vs wait、async generator と async iteration まで整理します。

モダンPython上級 #3 メタクラス — いつ本当に必要か
読了 6分

モダンPython上級 #3 メタクラス — いつ本当に必要か

クラスを作るクラス — type の正体、__init_subclass__ との分担、クラスデコレータで解けるケース、そして本当のメタクラスが必要な狭いケースまで整理します。

モダンPython上級 #2 ディスクリプタと __set_name__
読了 7分

モダンPython上級 #2 ディスクリプタと __set_name__

property が動作する原理 — __get__/__set__ プロトコルとデータ/非データディスクリプタ、__set_name__ できれいなバリデーションフィールドを作るところまで整理します。