PythonのWebフレームワーク「Django」徹底解説!



PythonのWebフレームワーク「Django」徹底解説!

Pythonのフレームワークとしては、Djangoが群を抜いて使われているでしょう。フルスタックのWebフレームワークで、幅広くWebフレームワークの開発に対応することができます。

本稿ではDjangoがなぜ使われているのか解説していくと共に、Pythonについても併せてご紹介しています。

目次
  1. フレームワークとは?
  2. Pythonとは?
  3. Djangoの基礎知識
  4. Djangoとは?
  5. Djangoの特徴
  6. あとがき

フレームワークとは?

それでは最初に、フレームワークの基礎知識について復習しておきましょう。

フレームワークとはアプリケーションの開発に役立つ、汎用的な機能がまとまったもののことです。フレームワークを導入することで、開発スピードや生産性を大幅にアップさせることができるようになります。

フレームワークにはさまざまな種類があり、RubyのRuby on RailsやPHPのCakePHPあたりが有名ですね。本稿で取り上げるDjangoは、Pythonのフレームワークにあたります。

なおフレームワークについて、より詳しくは下の記事で解説しています。フレームワークを導入することのメリットや、代表的なフレームワークについても紹介しています。

フレームワークとは?今更聞けないWebフレームワークを始めから丁寧に

Pythonとは?

Python

python.jp

DjangoはPythonのWebフレームワークなのですが、そもそもPythonはどういったプログラミング言語なのでしょうか?Djangoの特徴に入る前に、Pythonとはどんな言語なのか簡単に見ておきましょう。

Python(パイソン)は汎用的なプログラミング言語です。非常に扱いやすい言語ということもあり、FacebookやGoogleなどの大手企業でも導入されている実績があります。

Pythonは文法がシンプルで可読性が高いため、ビギナーにもおすすめの言語の一つです。最近注目が集まっている機械学習(マシンラーニング)との相性も良いため、今後はより一層ニーズが高まっていくことが予想されます。

Djangoの基礎知識

さて、ここからが本題。Djangoの基礎知識に入って行ければと思います。

Djangoとは?

Django

The Web framework for perfectionists with deadlines | Django

Django(ジャンゴ)とは、PythonのWebアプリケーションフレームワークのことを指しています。いわゆるフルスタックのフレームワークなのですが、Pythonのシンプルさもあり非常に使いやすく実践的なフレームワークになっています。Google(Google App Engine)やInstagram、NASAなど導入事例も多く知られています。

2005年7月にBSDライセンスでリリースされていて、現在ではバージョン1.10.2が最新となっています(記事執筆時点)。

Djangoの特徴

それではDjangoの特徴について見ていきましょう。

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

上で述べたように、Djangoはフルスタックのフレームワークです。フルスタックとは、Webアプリケーションの実装に必要な機能が一通り揃っていること。独自のテンプレートエンジンやO/Rマッパーなどを備えています。管理画面やプロトタイプの作成にも優れています。

MTVを採用した設計

MVCモデル(Model-View-Controller)のフレームワークが多い一方で、DjangoではMTVモデル(Model-Template-View)を採用しています。ただ、MVCのViewをTemplateとして、ControllerをViewとして扱っているようなものなので、両者に大きな違いはありません。

高速に動作する

Djangoを使って制作されたアプリケーションは、高速に動作することが期待できます。というのも、Djangoは標準で分散型のキャッシュシステムであるmemcachedを備えているから。規模の大きなサービスなどでは、Djangoは有力な選択肢になることでしょう。

あとがき

PythonのWebフレームワークであるDjangoの特徴について解説しました。まだまだ日本ではあまり知名度のないフレームワークなのですが、プログラミングをはじめる方にもオススメです。Cloud9などのクラウドIDEでも対応しているので、学習の取り組みやすさもあります。本記事を読んで少しでもDjangoに興味を持っていただけたら幸いです!

中西洋平
この記事を書いた人
中西洋平
\ 無料体験開催中!/自分のペースで確実に習得!
オンライン・プログラミングレッスンNo.1のCodeCamp