2017年大注目のPython!WEBフレームワーク3つを徹底比較

python-aaa
井上 慎也
書いた人 井上 慎也

こんにちは!インストラクターの井上(@InoIno_iesa)です。

Pythonは近年人気のプログラミング言語になってきていますが、、開発時にフレームワークの種類が多すぎてどれを使うべきか、またどれを学習すべきか、中級レベルの人でもなかなか悩ましいですよね。

また、トレンドを理解しておかないと、結局すぐに使えなくなってしまった場合、「学習に費やす時間も無駄になってしまう」ということもにもなりかねません。

そこで今回は、特にプログラミング入門者から中級者の方を対象として、Pythonフレームワークの選び方とオススメのフレームワークについて解説していきます。

↓Python学習に必要な情報を一つにまとめた記事を作りました。これを読めば、効率よくPythonを学ぶことが出来ます↓

そもそもフレームワークって?

そもそも前提としてフレームワークというものが分からない方もおられるかも知れませんので簡単に解説しておきます。

フレームワークとは「プログラミングでアプリ開発をする際に、土台として提供されているものです。」

自分でプログラミングを全て行う場合、莫大な量のソースコードを用意する必要があり、アプリ開発をする為にものすごく時間がかかってしまいます。

そこで、最近ではアプリ開発に必要なものをまとめて提供してくれているフレームワークを使って開発を行うことがスタンダードとなっています。

フレームワークや他の便利開発手法について詳しく知りたい方はこちらも御覧ください。

Pythonフレームワークの種類

実際にPythonフレームワークにどのようなものがあるのか見てみましょう。

比較的検索数が多く知名度が高いと思われるPythonフレームワークには次のようなものがあります。

  • Bottle(ボトル)
  • Django(ジャンゴ)
  • Flask(フラスク)
  • Pyramid(ピラミッド)
  • Plone(プローン)

ではこれらを比較してみましょう。

Pythonフレームワークの最近のトレンド

それでは実際にPythonフレームワークのトレンドを見てみましょう。

Googleトレンドにて検索カテゴリ「プログラミング」にて、比較的検索数が多い単語の組み合わせで調べています。

※その他の用語等と混同する可能性があるものは”python”も付けています。

青:Bottle
赤:Django
黄:Flask
緑:Pyramid
紫:Plone

世界の検索事情 2005-2016

スクリーンショット 2016-04-01 16.55.55

Pythonのプログラミングをしたことが有る方はご存知かと思いますが、Djangoが圧倒的に使用されています。

Flaskが次いでDjangoの「半分程度」の検索数が有り、その他はDjangoの「10分の1」にも満たない量です。

まだまだ検索シェアではFlaskはDjangoに劣りますが、その伸び率に期待も持てそうです。

日本の検索事情 2005-2016

スクリーンショット 2016-04-01 16.56.39

日本においても概ね世界と同じ傾向になっています。

Pythonフレームワークおすすめ3つ

ここまでの内容を踏まえて、これから開発や学習するのに学習や採用にお勧めのフレームワークを3つ紹介します。

Bottle

Bottleとは?

スクリーンショット-2016-04-01-15.36.30
URL:http://bottlepy.org/docs/dev/index.html
1ファイルで導入できる「超お手軽」なフレームワークです。

フレームワークの導入もお手軽に行うことが出来ます。

ひとことで言うと「シンプルイズベスト」なフレームワークです。

おすすめ理由

まだまだ知名度こそ低いものの地味に人気を集めてきています。

比較的新しい技術で、軽量なフレームワークのためアクセス速度もある程度担保出来ます。

要件によって本格的なアプリ開発に利用することもあります。

初学者がWEBフレームワーク入門として利用するにもオススメです。

Bottleの仕事

日本でBottleのフレームワークを利用するという求人はほとんどありません。

現在はあくまで学習用、または自分のWEBサービス用として利用することになるでしょう。

こんな人にオススメ

とりあえずPythonでフレームワークに触れてみたい!という人にオススメです。

「Bottleについてもっと詳しく知りたい」という方はこちらの記事をご覧ください。

  • なぜBottleの人気が上がってきているのか
  • どんな特徴があるのか
  • どんなアプリを開発するのに適しているのか

こういった内容が5分でサクッと読めて、Bottleがどんなフレームワークなのかがわかります。

Flask

Flaskとは?

スクリーンショット 2016-04-01 18.26.26
URL:http://flask.pocoo.org/

公式サイトのフレームワーク紹介には次のように書かれています。

Flask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions.

>フラスクはパイソンの小規模なフレームワークで、Jinja2というツールとWerkzeug(ヴェルクツォイク:ドイツ語でツールという意味)というプログラミングに使用するキット用います。

Djangoに近い考え方だけれども、面倒な部分を省いて軽量化させたようなフレームワークです。

おすすめ理由

トレンド比較時に覧ていただいた通り、人気が上がってきているフレームワークです。

比較的軽量で利用しやすく、これから更にシェアの伸びが期待できます。

Flaskの仕事

例えばForkwellという採用技術の詳細が分かる求人サービスでは、次のような仕事が募集されています。

スクリーンショット_2016-04-01_18_40_17

PythonのFlaskを中心に新しい技術を積極的に取り入れているチームのようです。

こちらでは年収1000万円くらいまで目指すことができます。

こんな人にオススメ

将来トンガリたい!将来的にPythonエンジニアも視野に入れている!という人にオススメです。

Django

Djangoとは?

スクリーンショット 2016-04-01 18.48.03
URL:https://www.djangoproject.com/

公式サイトのフレームワーク紹介には次のように書かれています。

Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.

>DjangoはハイレベルなPythonのWebフレームワークです。実用的に作られた素早く精錬された開発環境を提供します。

ひとことで言うと、Djangoは多機能な万能型WEBフレームワークです。

おすすめ理由

Pythonで仕事をするのであればまずこれを抑えて置かなければいけません。

Python界での世界シェアNo.1なので、今後も広く使い続けられます。

Djangoの仕事

例えばForkwellには次のような案件があります。

スクリーンショット_2016-04-01_18_46_29

Djangoを用いて新しい技術も積極採用しているチームのようです。

1500万までという年収も魅力的ですね。

こんな人にオススメ

Pythonエンジニアとして仕事をしたい!Pythonで色んな物を作りたい!という人。

迷ったときは

世界的に人気があり、日本でも様々な企業で利用しているDjangoを使うのをオススメします。

フレームワークとしてのしっかりした考え方を身につけることが出来ることと、Djangoさえ使えればほとんどのサービスが構築できるでしょう。

ただし、プログラミングの本当に初心者だという方は、Bottleを触ってみるのが無難です。

Djangoを使ってみようかなと思った方はぜひこちらの記事を参考にしてください。

Djangoを扱う上で必要なスキルどういうところが良いのか特徴など、詳しい内容を知っていただくのにぜひ役立ててください。

まとめ

Pythonフレームワークはいかがでしたでしょうか?

Pythonはまだまだ日本では仕事として案件を選びにくいですが、人工知能等新しい分野で活躍できる可能性が高い言語です。

トレンドなフレームワークも学習していろいろなものが作れるようになりましょう。

Pythonカリキュラム無料公開中!
この記事はPython入門完全攻略ガイド【基礎学習/アプリ開発/仕事獲得】の一部になります。このカリキュラムは、プログラミング入門者が、基礎学習からアプリ開発、さらには仕事獲得まで体系的に学べる内容となっています。

Python学習に必要な情報を一つにまとめていますので効率よくPythonを学ぶことが出来ます。この機会に是非活用していただければと思います。



33歳、未経験だった僕がフリーエンジニアになれた理由
現在フリーでWEBエンジニアをやられている濱口直行さん。33歳で、プログラミングを学び始め、約半年という短い期間で独立までされた学習ログを余すことなくインタビューさせていただきました。

プログラミングを学習中の方はもちろん、独立をお考えの方まで幅広く活用できる記事になっています。この機会に是非活用していただければと思います。


Pythonを最短で習得したい方へ
元々ITリテラシーの高い方やプログラムの学び方がわかっている方であれば、この記事通りに進めていけば、Pythonを独学で習得することができるでしょう。

ただし、実際の学習期間中はつまづいている時間がほとんどです。

「なかなかやり遂げられ無い、挫折してしまった」
「時間が足りない」
「情報が少なくどう調べればいいかわからない」
「エラーを解決することができない」
このような悩みを抱えている方も少なく無いと思います。

  • もう挫折したくない
  • 本業と両立しながら、好きな時間で自分のペースで勉強を続けていきたい
  • 自分だけのカリキュラムで効率的に勉強したい
そんな方はお気軽に侍エンジニア塾までご相談ください。

お一人お一人に専属のインストラクターがつくので、通常のスクールでは難しい、AI(人工知能)や機械学習、IoTについて学習することできます。

まずは『無料体験レッスン』で、弊社のコンサルタントと一緒にあなた専用の学習方やカリキュラムを考えてみませんか?

Pythonならではの学習方法や、現役Pythonエンジニアから貴重なアドバイスを受けることができます。

詳しくは下の画像をクリックして弊社サービス内容をご確認ください。

cta_mtm_python

学習者インタビュー

人気記事セレクション

エンジニア転職希望者必見

プログラミング学習者必見

LINEで送る
Pocket

この記事が気に入ったら
いいね!をしてフォローしよう

最新情報をお届けします

書いた人

井上 慎也

井上 慎也

侍エンジニア塾のインストラクター。フリーでWEB制作の受託や自身の事業の傍ら、侍ではWEBプログラミング方法の指導やプログラミング学習コミュニティの運用を行っている。
好きなショートカットキーは、command + w 。愛機はMac Book Pro。ブラウザのタブを大量に開きがち。