【Python】ウェブフレームワークDjangoとは何か〜5分で理解〜

Djangoとは、Pythonのウェブフレームワークです。

ウェブとは、世界中のコンピューターが繋がって、あらゆる情報交換が可能になった蜘蛛の巣状のネットワークのことを指しますが、それを利用しやすくしたものがWebサイトやWebアプリケーションです。

そのようなサービスを一から一人で作るのは、大変な手間と労力が必要になります。そこで活躍するのが「ウェブフレームワーク」なのです。
細かいプログラムの部品は、すでに作られていて、あとは目的に合わせて組み立ていくだけでWebアプリケーションなどが作れるのが、ウェブフレームワークです。

Djangoはそんなウェブフレームワークの一種であり、YouTubeやInstagramもDjangoによってできています。

DjangoはPythonの多機能フレームワーク

今や、データサイエンスの世界で不動の地位を築いているPythonは、驚くほど多くのことができます。その中でも注目に値するのが、Webサービスの構築でしょう。
今や、AIのほとんどはPythonで実装されます。そんなPythonで多くの情報が集まるプラットフォームを構築できれば、AIとの組み合わせで、常に成長し続けるWebサービスを作ることができます。

Pythonにはいくつかのウェブフレームワークがあります。

  • Django
  • Flask
  • Bottle

が有名なフレームワークです。

Webフレームワークとは?

Webフレームワークとは、Webアプリケーションを簡単に、素早く、分かりやすく開発するための機能を持つ道具箱のようなものです。

Webアプリケーションに必要な機能は、例えば以下のようなものがあります。

  • ログイン
  • 書き込み
  • 削除

などです。これらの機能を0から作るようなことはされていません。フレームワークを使って、ほんの少しだけコードを追加すれば、簡単に実装することができます。

大切なのは、プログラミングができるかどうかよりも、どんなサービスを提供できるかです。
目的の機能を簡単に実装できるようにすることで、エンジニアの学習コスト、時間、開発コストなどを大幅に節約できるのです。

Djangoはどんなフレームワーク?

さて、Pythonにはたくさんのフレームワークがあります。その中でもDjangoは、もっとも多機能で人気のWebフレームワークなのです。

Djangoを知るために、有名なPythonのWebフレームワークと比較しながらその特徴をみてみましょう。

  • Django
  • Bottle
    Flask
    Dash
  • responder

の5つで比較してみます。

webフレームワークの比較
有名なWebフレームワークの比較グラフ

BottleはPythonのWebフレームワークの中でももっともシンプルなもので、機能は少なく実装も簡単です。

Flaskも比較的簡単に実装できて、シンプルなものなので、初学者におすすめであると言われています。

responderも汎用的な昨日の実装が実現でき、機能もそこそこありますが、比較的新しい技術のため情報が少ないことが難点です。

Dashはちょっと特殊で、データの可視化に特化したWebアプリケーションです。もしも、株価の変動をグラフにするようなウェブアプリを提供する場合はDashを使うと良いでしょう。

Djangoは実装も難しいですが、機能はもっとも充実しています。最近は日本語のドキュメントも豊富にあるので、学習も比較的しやすいでしょう。

Djangoの学習方法

Djangoを普及させることに情熱を持っている方が、大変分かりやすい学習サイトを提供してくれています。

Django Academy

公式ドキュメントで理解を深めることは王道でしょう。

Django公式ドキュメント

次に紹介するDjango Girlsは大変分かりやすく人気のチュートリアルです。

Django Girlsのチュートリアル

以上は無料でDjangoが学べる素晴らしいサイトです。ぜひ活用してみてください。