close
コンテンツにスキップ

Flask

出典: フリー百科事典『ウィキペディア(Wikipedia)』
Flask
開発元 Armin Ronacher
初版 2010年4月1日 (2010-04-01)
最新版
3.1.3[1] ウィキデータを編集 / 2026年2月19日 (3か月前)
リポジトリ ウィキデータを編集
プログラミング
言語
Python
対応OS Cross-platform
種別 ウェブアプリケーションフレームワーク
ライセンス BSDライセンス
公式サイト palletsprojects.com/p/flask/
テンプレートを表示

Flask(フラスク)は、プログラミング言語Python用の、軽量なウェブアプリケーションフレームワークである。標準で提供する機能を最小限に保っているため、自身を「マイクロフレームワーク」と呼んでいる。Werkzeug WSGIツールキットとJinja2テンプレートエンジンを基に作られている。BSDライセンスで公開されている。

概要

[編集]

Flaskは、標準で提供する機能を最小限に保っているため、自身を「マイクロフレームワーク」と呼んでいる。Flask自身は、他のフレームワークがしばしば持っているような、データベース抽象化レイヤやフォーム値の検証などの機能を持たない。これは、どんなWebアプリケーションにも適合する良い基盤を作るための設計判断だとしている(例えば、テンプレートエンジンはほとんどのWebアプリケーションで有用だが、関係データベース等はすべてのアプリケーションが必要とするものではない)[2]。とはいえ、それらの機能を、あたかもFlaskが元からサポートしているかのように追加できる拡張性も備えている。現段階において、オブジェクトリレーショナルマッパや、フォーム値の検証、ファイルのアップロード、ユーザログイン、種々のオープンな認証技術をサポートする拡張などが第三者によって提供されている[3]

歴史

[編集]

FlaskはArmin Ronacherによって開発された。彼は『エイプリルフールのジョークとして作ったのだけれど、有名になって、いつのまにか本格的なアプリケーションになってしまった』[4][5]と述べている。

バージョン0.10で、Python 3に対応した[6]

FlaskはPython愛好家の間で人気がある。2020年10月 (2020-10)現在GitHub上のPythonのウェブ開発フレームワーク中でDjangoよりわずかに少ない2番目に多いスターを獲得しており[7]JetBrainsのPython Developers Survey 2018~2023では、最も人気が高いウェブフレームワークになった[8][9][10][11][12][13]

機能

[編集]
  • 開発用サーバとデバッガを備える
  • テンプレートエンジンとしてJinja2を使用
  • RESTfulなリクエストディスパッチ
  • 整備されたドキュメント
  • 統合されたユニットテストサポート
  • メッセージ認証コード付きのセキュアCookieのサポート(クライアントサイドセッションを実現)
  • WSGI 1.0 の完全な準拠
  • Unicodeベース
  • Google App Engine互換
  • 機能を追加する各種の拡張が利用可能

サンプル

[編集]

以下のサンプルコードは、ルートパスにアクセスすると "Hello World!" を表示するだけのアプリケーションである。

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World"


if __name__ == "__main__":
    app.run(debug=False)

関連項目

[編集]

脚注

[編集]
  1. “Release 3.1.3”. 19 February 2026. 2026年4月7日閲覧.
  2. Design Decisions in Flask”. 2013年2月20日閲覧。
  3. Extensions Registry”. 2013年2月20日閲覧。
  4. Ronacher, Armin. Opening the Flask”. 2011年9月30日閲覧。
  5. Denied: the next generation python micro-web-framework (April Fools page)”. 2011年9月30日閲覧。
  6. Pythonの軽量Webフレームワーク「Flask」がPython 3に対応 (2013年6月16日). 2014年3月11日閲覧。
  7. Python libraries by GitHub stars”. GitHub. 2020年1月27日閲覧。
  8. Python Developers Survey 2018”. www.jetbrains.com (2018年11月1日). 2021年5月20日閲覧。
  9. Python Developers Survey 2019 Results (英語). JetBrains: Developer Tools for Professionals and Teams. 2021年5月20日閲覧。
  10. Python Developers Survey 2020 Results (英語). JetBrains: Developer Tools for Professionals and Teams. 2021年5月20日閲覧。
  11. Python Developers Survey 2021 Results”. JetBrains: Developer Tools for Professionals and Teams. 2024年10月8日閲覧。
  12. Python Developers Survey 2022 Results”. JetBrains: Developer Tools for Professionals and Teams. 2024年10月8日閲覧。
  13. Python Developers Survey 2023 Results”. JetBrains: Developer Tools for Professionals and Teams. 2024年10月8日閲覧。

外部リンク

[編集]