Pythonの各フレームワーク

カテゴリ:Pythonの話

公開日:2020.07.03 最終更新日:2020.07.08
このエントリーをはてなブックマークに追加

こんにちは!インターン生の西です!今回はPythonのフレームワークについて紹介していきます!

1.Pythonでできること

  • webサービス、webアプリケーションの製作
  • 機械学習、ディープランニングでの人工知能開発
  • 自動データ処理や分析
  • web上のデータ自動収集

2.フレームワークのタイプ

・フルスタックフレームワーク

このタイプはweb開発に必要な機能がすべてそろっているフレームワークで汎用性があります。(例:Django)

・マイクロフレームワーク

このタイプは必要最低限の機能が搭載されているフレームワークで、小規模な開発をする人や、軽量な動作を求められるシステムにおすすめです。(例:bottle、flask)

・非同期フレームワーク

このタイプは多数の同時接続の処理が可能なフレームワークで、効率的に処理ができるような開発をしたい場合におすすめです。(例:tornado)

3.フレームワークの種類

フレームワークとは、便利な機能がたくさん詰まったツールのことであり、使用するメリットとしては、開発の効率化、ミスやエラーが起きにくくなる、コードが統一化されるためメンテナンスがしやすくなるといったことがあげられます。では、Pythonでよく使われるフレームワークとその特徴を紹介していきます。

・Django

Django(ジャンゴ)はPythonのフレームワークのなかでも一有名で、「ユーザー認証」、「管理画面」、「サイトの案内ページ」、「RSSフィード」などの機能があらかじめ含まれています。特徴としては、セキュリティの安全性が高い、柔軟性が高い、用途が広いなどのメリットがあげられます。

・bottle

bottleは軽量で高速であることに特化しているため他のフレームワークと比べてもシンプルで使いやすいです。そのため「お手軽!」であり、小規模なアプリケーション開発やスピーディーな開発をする際によく使われます。しかし、Djangoよりも機能がすくないため、他のライブラリなどで補う可能性があります。

・flask

flaskはbottleと似た機能を持っていて、標準機能が最小限であり、動きの軽いシンプルなフレームワークです。そのため小規模サイトの開発や、スピーディーな開発をする際によく使われることです。

・tornado

tornadoは非同期通信が行えるフレームワークです。非同期通信とは、データの送信者と受信者のタイミングをとらずに通信を行うため、同時に大量のリクエストがあったとしても対応することが可能です。このフレームワークは、ロングポーリング、websocket、および各ユーザーへの長時間の接続が必要なその他のアプリケーションに最適です。

・さいごに

以上のようにフレームワークは作業効率を向上してくれるツールであり、それぞれに便利な特徴があります。また、フレームワークを選ぶ際は学びやすさ、開発環境に適しているかどうかを基準にしましょう。もし、どのフレームワークを使うか迷ったら学びやすさ、汎用性の高さ、Pythonでのフレームワーク使用率の高さを考えて「Django」をおすすめします!





一覧へ戻る