Flaskの概要
Flaskとは、Python言語用の軽量(micro)ウェブフレームワークです。microが意味するところは「ユーザが作成するウェブアプリケーションが1つのファイルで構成されているくらい小さい」や、「Flaskの提供している機能がウェブフレームワークとして少ない」といったことではありません。microが意味するところは、Flaskのコアがシンプルで軽量な作りとなっているということです。コアはシンプルですが各種モジュールを使って拡張可能な作りになっているため、最初はシンプルなアプリケーションとして作り始め、アプリケーションを拡張するに連れ必要な機能を提供するモジュールをFlaskに追加して大きなアプリケーションに作り上げていくといったことが可能です。
Flaskの主な特徴
Flaskは、主にWerkzeugとJinjaの2つのライブラリをラッピングして作られています。前者はWebサーバを内包したWSGI(PythonのWebインターフェイス標準規格)に準じたライブラリで、後者はテンプレートエンジンです。多くのWebフレームワークにある、データベースを必須とするアプローチは取っていません。この様に、Flaskのコア部分は2つのライブラリを元に作られているためとてもシンプルです。同じPythonのWebフレームワークであるDjangoはフルスタックなWebフレームワークと位置づけられており、対局に位置するためこの2つはよく比較対照に挙げられます。
Flaskの動作環境
Flaskを動作させるためには、以下が必要です。
- Python 2.7
- Python 3.5~(最新の3系バージョンの使用を推奨)
- Python開発ライブラリ
パッケージマネージャーでFlaskをインストール際に下記のモジュールが自動的にインストールされます。
- Werkzeug
- Jinja
- MarkupSafe
- ItsDangerous
- Click
Flaskのライセンス
Flaskは、三条項BSDライセンス(BSD-3-Claus)と共に配布されています。三条項BSDライセンスは、「無保証であること」、「著作権、ライセンス条項」の明記を条件としています。条件を満たせば、ユーザーはそのソフトウェアの使用や頒布、修正、派生版の頒布(修正したソースコードを公開すること無く、オブジェクトコードの頒布が可能)をすることに制限を受けません。
Flaskの参考情報
Webサイト
https://palletsprojects.com/p/flask/
ドキュメント
https://flask.palletsprojects.com/
ソースコード
https://github.com/pallets/flask/