What is Flask?

Posted on February 27, 2017 by @naca_cyan13

WebアプリフレームワークFlaskの紹介。

Flask って何?

Pythonに提供されているWebアプリフレームワークです。

from flask import Flask
app = Flask(__name__)

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

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

というコードをApp.pyに書き、

$ python App.py

と実行すれば、Hello World と返すサーバーの出来上がりです。

どうやって使えるようにするの?

お使いのシェルにpipが入っているなら、

$ pip install flask

でOK。パッケージの競合などを避けたい場合はvirtualenvなどを使用するとよいでしょう。

他にどんな機能があるの?

Flaskではテンプレートエンジンにjinja2 を使用しています。 テンプレートエンジンとは、ひな型のテンプレートファイルを作成し、プログラム上で扱われるデータと合成してユーザーに見てほしいHtmlを生成するプログラムです。 これによって簡単に動的なページを作ることができます。

さらにデータベース関連もSQL AlchemyというFlaskと連携するライブラリを使うことで簡単に操作できます。

他のライブラリとは何が違うの?

フルスタックではないところがいいと思います。 フルスタックでは、ライブラリの学習コストが高かったりするのですが、Flaskではチュートリアルを読み流せばすぐにウェブアプリが作れちゃいます。 また言語がPythonであるため、ライブラリが豊富という点でも利点があると思います。