Skip to content
Latchkey

Flask vs Django: マイクロか、フルスタックのPythonか

Flaskは拡張から組み立てる最小限のマイクロフレームワークで、DjangoはORM、admin、認証、規約を備えたバッテリー同梱のフレームワークです。

Flaskはルーティングとリクエスト/レスポンスのサイクルを提供し、他のすべての部品をあなたに選ばせます。小さなサービスやオーダーメイドのアーキテクチャに理想的です。Djangoは統合されたORM、admin、認証、テンプレート、マイグレーションを強い規約とともに提供し、フルアプリケーションを素早く構築するのに理想的です。トレードオフは自由度 vs 同梱された構造です。

FlaskDjango
スコープマイクロフレームワークフルスタックフレームワーク
バッテリー自分で選ぶORM、admin、認証を同梱
規約最小限強い
柔軟性非常に高い規約の範囲内
最適な用途小規模 / オーダーメイドのアプリ完全なアプリケーション

CIでは

Djangoは統合されたtest runner、マイグレーション、DBセットアップを提供します。Flaskはpytestと追加した拡張でテストします。どちらもCIで使い捨てのデータベースサービスと動作します。小さなまたは非慣習的なサービスにはFlask、同梱のツールが役立つフルアプリにはDjangoを選びましょう。

高速化する

実行間でPython環境をcacheし、使い捨てのDBに対してマイグレーションします。どちらもCI runnerで動作し、高速なmanaged runnerはインストールとテストのステップを短縮します。

結論

小さなまたは高度にカスタムなサービスを構築するなら: Flask。フルアプリケーションを構築し、ORM、admin、認証を最初から欲しいなら: Django。ミニマリズムとコントロールにはFlask、フルスタックの生産性にはDjango。

関連ガイド