Flaskアプリの作り方を基礎から学ぼう!初心者が覚えるべき開発の流れとは?
生徒
「先生、Flaskって何ですか?どうやって使い始めたらいいか全然わかりません…」
先生
「Flask(フラスク)はPythonでWebアプリケーションを作るためのツールです。とても軽くてシンプルなので、初心者でも始めやすいですよ。」
生徒
「パソコンはあまり使ったことがないんですけど、それでも大丈夫ですか?」
先生
「もちろんです!パソコンが苦手でも、一歩ずつゆっくり進めていけば大丈夫。今日はFlaskアプリの基本的な作り方を、やさしく一緒に学んでいきましょう!」
1. Flaskとは?PythonでWebアプリが作れる魔法のツール
Flask(フラスク)は、Pythonで作られた軽量な「Webフレームワーク」です。名前は少し難しく聞こえますが、かんたんに言うと「PythonでWebアプリを作るための便利セット」のようなものだと思ってください。
「Webフレームワーク」とは、WebサイトやWebアプリを作るときに毎回必要になる決まりごとやしくみを、あらかじめ用意してくれている道具箱のことです。ゼロから全部を自分で作ると、ログイン機能やお問い合わせフォームを作るだけでも、とても時間がかかってしまいます。
Flaskを使うと、「このページを表示したい」「ここにメッセージを出したい」といったよくある処理を、決められた書き方でサッと書くだけで済みます。余計な機能が少なく、とてもシンプルなので、プログラミング初心者でも流れを追いやすいのが特徴です。
例えば、Flaskを使うと次のように、アプリの「土台」を数行のコードで用意できます。
from flask import Flask
app = Flask(__name__)
最初の行では、FlaskというWebアプリを作るための道具を「使えるようにしますよ」という宣言をしています。次のapp = Flask(__name__)という1行で、「これからFlaskアプリをここから作ります」とアプリの本体を用意しているイメージです。
このように、Flaskは少ないコードでWebアプリの土台を作れるのが大きな魅力です。お問い合わせフォームや簡単なメモアプリ、勉強用のミニサイトなども、PythonとFlaskがあれば自分の手で少しずつ形にしていくことができます。
2. Flaskを始める準備をしよう(インストール編)
まず、Flaskを使うにはPythonが必要です。Python(パイソン)は、世界中で使われている人気のプログラミング言語で、初心者にもやさしい文法が特徴です。
Pythonがパソコンに入っていない場合は、公式サイトからインストールしましょう。次にFlaskを使うには「コマンドプロンプト」や「ターミナル」という黒い画面でコマンドを入力します。
以下のコマンドを入力して、Flaskをインストールしましょう。
pip install Flask
pipはPythonの道具をインストールする命令です。Flaskをインストールすることで、Webアプリを作るための材料がそろいます。
3. はじめてのFlaskアプリを作ってみよう
インストールができたら、さっそくFlaskアプリを作ってみましょう!まずは下記のように、Pythonファイルを1つ作ります。ファイル名はapp.pyにしておくとわかりやすいです。
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "こんにちは、Flaskの世界へようこそ!"
if __name__ == "__main__":
app.run()
このコードでは、Flaskというクラスを使ってWebアプリを作っています。@app.route("/")という部分は「このページにアクセスされたら、どんな画面を見せるか」を決めています。今回は「こんにちは、Flaskの世界へようこそ!」と表示されるようになっています。
4. アプリを動かしてブラウザで見てみよう
次に、作成したapp.pyを実行して、実際にブラウザでアプリを確認してみましょう。
python app.py
上のコマンドを入力すると、ターミナルに「Running on http://127.0.0.1:5000」という表示が出ます。このhttp://127.0.0.1:5000は、あなたのパソコンの中だけで動いているテスト用のアドレスです。
ブラウザを開いて、そのアドレスを入力すると、先ほどの「こんにちは、Flaskの世界へようこそ!」という文字が表示されるはずです!
5. Flaskの仕組みをもっと分かりやすく説明
ここで少しだけ、Flaskがどんな風に動いているかを簡単にイメージしてみましょう。
Flaskは「郵便局」のような役割をしています。Webブラウザから「このページが見たい!」というリクエストが送られてくると、Flaskがそれを受け取り、「この住所(URL)に来た人には、この手紙(HTML)を返そう」と返事を返します。
このやり取りを通じて、Webページが表示されているのです。つまり、Flaskはページの出し分けをしてくれる「受付スタッフ」のような存在ですね。
6. ページを増やしてナビゲーションしてみよう
「/」というURLだけでなく、別のページも作ってみましょう。たとえば「/about」というページを追加したいときは、以下のようにコードを追加します。
@app.route("/about")
def about():
return "このサイトは、Flaskの学習用サンプルです。"
これでhttp://127.0.0.1:5000/aboutにアクセスすれば、「このサイトは、Flaskの学習用サンプルです。」と表示されるページが作れました。
7. よく使うFlaskの用語と意味
初心者がつまずきやすいFlaskの用語を、かんたんに説明しておきましょう。
- Flask:PythonでWebアプリを作るための道具
- route(ルート):URLに応じて表示するページを決める設定
- app.run():アプリをスタートさせる命令
- ブラウザ:Webページを見るためのソフト(ChromeやSafariなど)
- サーバー:ページのデータを送ってくれる役割のコンピュータ
8. よくあるトラブルとその対処法
Flaskを始めたばかりだと、よくこんなエラーが出ることがあります。
- ModuleNotFoundError: No module named 'flask'
→ Flaskがインストールされていない可能性があります。pip install Flaskをもう一度試してみましょう。 - SyntaxError
→ コードの書き間違いが原因です。スペルやコロン(:)の抜けなどがないか確認しましょう。 - ポートが使われています
→ すでにFlaskが動いている場合に出るエラーです。ターミナルを再起動するか、パソコンを再起動してみてください。
まとめ
Flaskを使ったWebアプリの作り方を一通り学んできましたが、振り返ってみると、はじめてWeb開発に触れる人にとって大切な要素がたくさん散りばめられていることに改めて気づきます。Pythonという読みやすい言語を中心に、Flaskがどのようにページを返し、どのようにルートを振り分け、そしてどのような流れでブラウザへ表示が送られていくのかを順序よく確認していくことで、初心者でもアプリ作りの全体図をつかみやすくなる構成になっています。特に、最初のページを表示する仕組みから、複数ページの追加方法、エラーが出たときの考え方まで、Webアプリ開発を続けるうえで必要になる基礎がしっかり形になった内容でした。 Flaskはとても軽くて扱いやすいフレームワークですが、だからこそ、自分の好きな範囲から機能を追加していける柔軟さがあります。最初に学んだような「ルートの作り方」や「app.run()でアプリを起動する流れ」は、他のページを増やす際にもそのまま応用できますし、HTMLを組み合わせれば画面のデザインも少しずつ変えていけます。学び始めたばかりの段階では、小さなページが表示されるだけでも達成感がありますが、それを積み重ねることで本格的なWebアプリにつながるため、ゆっくりと確かな土台を作っていくことが大切です。 また、Flaskは「郵便局のようにリクエストを受け取り、必要な返事を返す」というイメージを持っておくと、ネットワークのしくみを理解する助けになります。Webアプリと聞くと難しそうに感じますが、住所(URL)ごとに返す内容を選ぶだけのシンプルな流れだと分かると、頭の中で整理しやすくなるはずです。今回の内容では、特に初心者がつまずきやすいポイントにも触れており、よくあるエラーをどう読み解けばよいか、どんな対処をすればよいかも一緒に確認できました。こうした知識はアプリ作成だけでなく、調べながら学ぶ姿勢を育てるうえでも役に立ちます。 さらに、一歩進んだ使い方として、ページを増やしたり、フォームを作ったり、外部サービスと連携したりといった応用も視野に入れながら、自分のペースで進められる点も魅力です。今回の基礎を押さえたうえで、必要に応じて拡張機能を導入することで、より広い世界へ踏み出す準備が整います。以下に示すサンプルコードは、理解を深めるために重要な構造を改めて確認する目的で再掲したものです。構造を見直すことで、ルートと関数の関係、アプリの起動プロセスが自然と身に付きます。
サンプルコードで基本の流れを再確認
こちらは複数ページを持つシンプルなFlaskアプリの例です。同じ構造を繰り返すことで、ページ追加の流れを体が覚えてくれます。
from flask import Flask
app = Flask(__name__)
@app.route("/")
def home():
return "トップページです。ようこそ!"
@app.route("/about")
def about():
return "こちらは学習用のサンプルページです。"
@app.route("/contact")
def contact():
return "お問い合わせページのサンプルです。"
if __name__ == "__main__":
app.run()
ルートを増やすだけでページの数が自然に増えるので、最初のうちは「文章を変えてページが増える楽しさ」を感じながら練習すると理解も深まりやすくなります。動きを確認しながらコードを変更する体験こそが、Webアプリ開発における大事なステップです。
生徒
「今日一日で、Flaskの流れがだいぶ分かるようになってきました!最初は黒い画面が怖かったんですけど、少し慣れてきました。」
先生
「最初の一歩としては本当に素晴らしい進み方ですよ。Flaskは仕組みがシンプルなので、動きを確かめながら覚えられるのが良いところなんです。」
生徒
「ページが増えると、ちょっとしたサイトを作っている気分になりますね。自分でも何か作れそうだって思えてきました!」
先生
「その気持ちがとても大切なんですよ。これからフォームやテンプレートにも挑戦すると、もっとできることが広がっていきますから、楽しみにしていてください。」
生徒
「はい!次はもっと実践的なページ作りにも挑戦してみたいです!」