【Flask入門】Python初心者でもわかるフレームワークを解説!

幾多あるプログラミング言語の中で、現在最も注目を集めているものがPythonです。

そしてカスタマイズ性が高く、シンプルなWebアプリケーションに適しているものがFlaskというフレームワークです。
そこで今回はFlaskの説明からメリット、利用方法まで一通りご紹介していきます。

公開日:2019年2月27日

【入門編】Flaskとは?Pythonとの関係は?

FlaskとはPython上で動くマイクロウェブアプリケーションフレームワークです。

ウェブアプリケーションフレームワークといえば、Rubyというプログラミング言語上で動くRuby on Railsが有名で、イチからすべてプログラムを実装するのではなく、コマンド1つでログインなどの事前に準備されている機能を設定することができる仕組みです。

Flaskの場合は「マイクロ」と付いていることもあり、標準で搭載されている機能は最小限に抑えられています。

Flaskを使うメリットは何?

それではFlaskを利用するメリットはどのようなものがあるのでしょうか。
メリットとして大きく3つを挙げることができます。

①Flaskは軽い

Flaskは「マイクロ」ウェブアプリケーションフレームワークの名前通り、必要最低限の機能しか搭載されていないため、他のウェブアプリケーションフレームワークに比べて動きが軽くなります。
そのため、多くの機能は必要としない単純なWebアプリケーションなどに適しています。

②Flaskは機能がシンプルで学習が簡単

搭載されている機能が多ければ、それぞれの機能について時間をかけて学んでいく必要があります。一方、Flaskは搭載されている機能が少ないためシンプルで学習が簡単です。

③Flaskは自分次第で細かいカスタマイズができる

一般的なウェブアプリケーションフレームワークでは、大体搭載されている機能をもとにアプリケーション設計をしていくため、あまりカスタマイズをすることはありません。
一方、Flaskは多くの機能を自分で実装していく必要があるため、要件に応じた細かなカスタマイズをすることが可能です。

\文字より動画で学びたいあなたへ/

Udemyで講座を探す >

入門者でもわかるFlaskでできること

Flaskではシンプルでカスタマイズ性が高いというメリットを活用し、簡単なWebアプリケーションやサービスを作成できたり、短いコードで手早く機能を実装したプロトタイプを作成したり、処理するリクエスト数が少ないBotなども作成ができます。

大規模なシステムには向きませんが、小規模の環境で使うには小回りがきくマイクロウェブアプリケーションフレームワークです。

Djangoとの違いは?

django

Python上で動くウェブアプリケーションフレームワークの1つに「Django」というものがあります。

Flaskとは対照的な全部盛りの豪華なフレームワークで、少ないコードで「ユーザー認証」「管理画面」「サイトの案内ぺージ」「RSSフィード」など、よく使われる機能を構築することができます。

Djangoは多くの機能を搭載するようなWebアプリケーションに使われることが多いです。

実際にFlaskを使ってみよう

それでは実際にFlaskを使ってみましょう。Flaskのインストールから簡単なプログラムを作成する手順をご紹介します。

Flaskのインストール方法

インストールは非常に簡単で、コマンドを入力するターミナルを起動し、下記コマンドを実行するだけです。

pip3 install Flask

Pythonの3系がインストール済みの場合は下記コマンドでも問題ありません。

pip install Flask

Flaskを使って簡単なプログラムを書く手順

それでは簡単なプログラムを書いて、初めてでおなじみの「Hello world」を出力してみましょう。

〇プログラム

from flask import Flask
app = Flask(__name__)

@app.route(‘/’)
def hello():
hello = “Hello world”
return hello

if __name__ == “__main__”:
app.run()

2行目の「app」でFlaskを定義し利用できるようセットします。
4行目の「app.route(‘/‘)」でルートのアドレスに以下のものを配置することを明言し、5行目~7行目が「Hello world」を出力するプログラムになります。
9行目~10行目はおまじないです。

それではプログラムを実行してみましょう。

$ python3 hello.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

「http://127.0.0.1:5000/」のURLにアクセスをすると「Hellow World」の表示を確認することができます。

最後のプログラム出力で見ていただいたように、Flaskはプログラムの実装から出力まで、簡単にできるマイクロウェブアプリケーションフレームワークです。
Pythonに興味があり、少しでも触ってみたいという方は、ぜひ自分の手で実際に動かしてみてはいかがでしょうか。

Udemyおすすめ講座

設計を理解しながらWebアプリを開発!【はじめてのWeb開発】【Flask】

設計を理解しながらWebアプリを開発!【はじめてのWeb開発】【Flask】

4.5(318 件の評価)

2,646 人の受験生

作成者: ぐり主任 【ぐりLab】(ITエンジニア/プロジェクトマネージャー/マーケター)

「要件や設計を理解していないけど、なんとなくできる」という状態から「設計を理解しながら開発できる」ようにWeb開発の基礎知識を習得しながらpython+FlaskでWebアプリを実装します!

\無料でプレビューをチェック!/

講座を見てみる

評価:★★★★★
非常に丁寧かつ分かり易い説明で、受講者に寄り添うように優しく講義して下さって理解がし易かったです。Flaskを学ぶ際のファーストステップとしてのベストプラクティスでした。一歩一歩着実に理解しながらアプリを作ることが出来て楽しかったです。ありがとうございました。

評価:★★★★★
とてもわかりやすかったです。フローチャート、シーケンスチャート、ファイル構成などがあるおかげで、設計イメージが掴みやすかったです。
時間がたったあと、これらの資料を見直せば、オリジナルのWebアプリを作るのに役立ちそうです。