Django
Python 製のフルスタック Web フレームワーク。必要な機能を一式備え高速開発を支える
Web開発フレームワーク
「Django」の技術書を見る (37 冊) →Django とは
Django (ジャンゴ) は、Python で Web アプリケーションを構築するためのフレームワークだ。Web 開発に必要な機能を一通り標準で備える「フルスタック」型で、データベース操作・管理画面・認証・セキュリティ対策などが最初から用意されている。「電池付属 (batteries included)」を掲げ、少ないコードで本格的な Web サービスを素早く構築できる。
何を提供するか
| 機能 | 役割 |
|---|---|
| ORM | データベースを Python オブジェクトとして操作 |
| 管理画面 | データ管理用の画面を自動生成 |
| 認証 | ログイン・権限管理を標準装備 |
| セキュリティ | 主要な攻撃への対策を組み込み |
特に、データモデルを定義するだけで管理画面が自動生成される機能は、開発初期の生産性を大きく高める。
FastAPI との違い
| 観点 | Django | FastAPI |
|---|---|---|
| 範囲 | 画面を含む Web アプリ全体 | API 構築に特化 |
| 機能 | 一式そろったフルスタック | 軽量・必要な部分を組む |
| 向く用途 | 総合的な Web サービス | 高速な API・マイクロサービス |
画面も含めた Web サービス全体を作るなら Django、API に特化するなら FastAPI、という使い分けになる。
採用時の注意点
Django は多機能なぶん、フレームワーク独自の作法を理解する必要があり、小規模なアプリには重く感じることもある。標準機能が「規約」に沿って動くため、その流儀から大きく外れた要件では、かえって扱いにくくなる場合がある。また、セキュリティ対策が組み込まれているとはいえ、設定を誤れば穴になるため、過信は禁物だ。土台となる Python と Web の基礎を理解したうえで使えば、堅牢な Web サービスを効率よく構築できる。
学習には関連書籍が役立つ。
この記事は役に立ちましたか?