徹底比較!Pythonで人気のフレームワークまとめ
初心者向けにPythonで人気のフレームワークを徹底比較しています。Pythonのフレームワークの中でも人気のものに絞り、それぞれ特徴や優位性を紹介しています。開発するサービスの規模によっても向き不向きが分かれるので、参考にしてみてください。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Pythonは、YouTubeなどで使われている言語で機械学習などを得意とする特徴を持っています。実際にWebサービスを開発しようと思ったらフレームワークを利用する企業や人が多いと思いますが、この記事では人気のフレームワークを紹介していきます。
フレームワークごとに特徴が違うので、開発するサービスの規模など向き不向きを理解しておくと選定しやすいでしょう。
なお本記事は、TechAcademyのPythonオンライン講座の内容をもとにしています。
Django
DjangoはPythonのフレームワークでも最も有名なフレームワークです。
特徴として、見通しのよい MVC 分離、洗練された O/R マッピング API、そして汎用性の高い強力なテンプレートエンジンを備えています。
そして、高い柔軟性とパフォーマンスを同時に要求されるWebアプリケーション開発をサポートするフルスタックのフレームワークです。
また、 オブジェクト管理インタフェースやユーザ認証、セッション、国際化といった Webフレームワークとしての基本はもちろん、汎用のビューロジックや配信フィード (RSS/Atom) の生成など、Webアプリケーション開発に共通するメカニズムを提供し、DRY (Don’t Repeat Yourself) の法則に沿った開発を提供しているフレームワークです。
フルスタックとは、データベースやユーザーインターフェース、セキュリティの機能を全て1つのアプリケーションで賄うことができるということです。
DRYとはプログラミングにおいて、同じような処理を様々な場所に置くことを禁止するというような意味です。
Bottle
Bottleは、マイクロWebフレームワークです。
Djangoがフルスタックフレームワークですが、そこまでの機能は必要ないという開発者向けにWeb開発を行う最低限の機能は備えたフレームワークです。
マイクロフレームワークがフルスタックフレームワークよりも素晴らしい点は、学習する量が少なくて済むということです。
たったこれだけのメリットですが、すぐに何かを作りたいという開発者にとっては最大のメリットです。
他にもマイクロフレームワークはありますが、Bottleはたったい1ファイルだけのファイルでフレームワークとして機能しています。
中規模以上の開発を行う上では、技術的ハードルをクリアする必要がありますが、ちょっとしたWebサービスであればこれ以上無いPythonフレームワークです。
Flask
FlaskはマイクロWebフレームワークの中でも人気のフレームワークです。
人気の理由は中規模以上の開発にも対応しているということです。
当然その分学習内容は必要になりますが、マイクロWebフレームワークという名前の通り、1ファイルのみ記述することで実装可能な設計になっています。
そういう意味で、最低限必要な部分だけの学習量としてはマイクロWebの名前の通りのフレームワークです。
本当に人気なのか
今回紹介したフレームワーク以外も検索状態を比較しましたが、Python Djangoフレームワークがダントツの人気となっています。
また、マイクロWebフレームワークのFlaskがPythonのマイクロWebフレームワークでは、Python Djangoについでの圧倒的人気を誇っています。
利用者が多ければドキュメントなども比例して充実していることが多いので、なるべく他の人が多く使っているフレームワークを選ぶと習得ハードルも低いでしょう。
入門向けPythonの学習サイトも記事にしているので、学習したい方は参考にしてみてください。
この記事を監修してくれた方
中本賢吾(なかもとけんご) 開発実績:PHPフレームワークによるフランチャイズ企業向け会員制SNS。Shopifyによる海外進出用大規模ネットショップ構築。Vue.jsによる金融機関向け内部アプリ。AWSやLinuxハウジングサーバーでの環境構築。人工知能を利用した画像判別システム。小売チェーン店舗用スマホアプリ。Wordpressによる不動産チェーン店向け賃貸・売買仲介システム。基幹システム移管用データコンバートシステム。
小学生がUnityでオリジナルAndroidアプリをGooglePlayでリリース、NHK Whyプログラミング入賞、全国Programing Festival入賞、中学生がノーコードでSNS型PWAアプリリリースなど、ボランティアプログラミング教育活動行っている。 |
また、オンラインのプログラミングスクールTechAcademyではPythonを使って機械学習の基礎を学ぶPythonオンライン講座を開催しています。
初心者向けの書籍を使って人工知能(AI)や機械学習について学ぶことができます。
現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、習得することが可能です。
独学に限界を感じている方はぜひご覧ください。