Flask
![]() | |
開発元 | Armin Ronacher |
---|---|
初版 | 2010年4月1日 (2010-04-01) |
最新版 | 3.0.3[1] ![]() |
リポジトリ |
![]() |
プログラミング 言語 | Python |
対応OS | Cross-platform |
種別 | ウェブアプリケーションフレームワーク |
ライセンス | BSDライセンス |
公式サイト | palletsprojects |
テンプレートを表示 |
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)現在[update]、GitHub上のPythonのウェブ開発フレームワーク中でDjangoよりわずかに少ない2番目に多いスターを獲得しており[7]、JetBrainsのPython Developers Survey 2018、2019、2020では、最も人気が高いウェブフレームワークになった[8][9][10]。
機能
- 開発用サーバとデバッガを備える
- テンプレートエンジンとして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)
関連項目
外部リンク
- Flaskウェブサイト
- Flaskドキュメンテーション
- Github上のプロジェクトページ
- PyPI上のFlaskのページ
脚注
- ^ “Release 3.0.3” (7 4月 2024). 23 4月 2024閲覧。
- ^ “Design Decisions in Flask”. February 20, 2013閲覧。
- ^ “Extensions Registry”. February 20 2013閲覧。
- ^ Ronacher, Armin. “Opening the Flask”. September 30, 2011閲覧。
- ^ “Denied: the next generation python micro-web-framework (April Fools page)”. September 30, 2011閲覧。
- ^ “Pythonの軽量Webフレームワーク「Flask」がPython 3に対応” (2013年6月16日). 2014年3月11日閲覧。
- ^ “Python libraries by GitHub stars”. Github. 2020年1月27日閲覧。
- ^ “Python Developers Survey 2018”. www.jetbrains.com (2018年11月1日). 2021年5月20日閲覧。
- ^ “Python Developers Survey 2019 Results” (英語). JetBrains: Developer Tools for Professionals and Teams. 2021年5月20日閲覧。
- ^ “Python Developers Survey 2020 Results” (英語). JetBrains: Developer Tools for Professionals and Teams. 2021年5月20日閲覧。
- 表示
- 編集
| |
---|---|
ASP.NET | |
Groovy | |
Java | |
JavaScript | |
Perl |
|
PHP | |
Python | |
Ruby | |
Scala | |
![]() |
| |
---|---|
実装 |
|
ウィジェット・ツールキット | |
フレームワーク |
|
統合開発環境(専用) |
|
総合開発環境(汎用) |
|
ライブラリ | |
|