PythonのWebフレームワーク「Django」の紹介
「Flask」「Tornado」「Bottle」「Pyramid」等、Pythonには沢山のWebフレームワークがあります。
今回はその中で最も人気なフレームワークの一つである、Djangoを紹介します。
Djangoの歴史
Djangoは米国のLawrence Journal-World社のWeb開発部門、
「World Online」が開発したWebフレームワークで、実際の業務の現場で生まれたフレームワークです。
2003年の秋頃、World Onlineの開発者達はPHPに見切りをつけ、PythonでのWeb開発に取り組み始めました。
改良に改良を重ね、技術者が集まるカンファレンスにてこのDjangoを紹介したところ反響を呼び、オープンソース化が決定、2005年7月15日に公開されました。
順調にバージョンアップを重ね、現在ではバージョン1.9がリリースされています。
ちなみにDjangoは「ジャンゴ」と発音します。
名前の由来はギタリストのジャンゴ・ラインハルト (Django Reinhardt) から取ったそうです。
Djangoのパフォーマンス
Djangoは大量のトラフィックをさばく能力に長けています。
開発したWorld Onlineは何年もの間Djangoを使い、1時間に100万を超える集中アクセス等も経験しましたが、極めて安定していたそうです。
また、アプリケーションサーバー1台とDBサーバー1台で、1日に1800万のページビューをさばき、後日ログ解析でそれを初めて知ったという逸話もあります。
Djangoの採用実績
Djangoは様々な企業や団体での採用実績があります。
https://www.djangosites.org/
こちらのサイトは、Djangoで作られたサイトを紹介しており、現在の数は5080!
勿論ここに載っていないDjango製ウェブサイトも沢山あります。
日本ではPythonという言語自体あまり馴染みがありませんが、海外では非常に有名な言語で、Djangoもまた人気のあるWebフレームワークです。
「Djangoの経験がある人」というような求人も少なくありません。
実際に、海外のクラウドソーシングサイトでPythonの経験があるワーカーのプロフィールでは、「Django」の文字が目立ちます。
企業ではワシントンポスト社、NASA、Google等、有名な企業が採用しています。
また、「Google App Engine」にDjangoが標準で組み込まれていますし、
オンラインIDEサービスの「cloud9」にもDjangoのプロジェクトが用意されている等、様々な環境に標準で組み込まれています。
Djangoの特徴
Djangoは「フルスタック」と呼ばれるWebフレームワークです。
Webフレームワークによく使用される「URLディスパッチャー」「O/Rマッパー」「テンプレートエンジン」といった機能がDjango自体に付属されています。
また、以下のような管理画面が自動で生成されるのも魅力の一つです。
これはデータの投入や更新・削除といった処理が行え、非常に便利です。
Djangoにはいくつかの設計思想がありますが、その中には「迅速な開発」、「コード量の低減」といったものがあります。
この設計思想のとおり素早く、短いコードでWebアプリケーションを構築することが可能です。
Djangoを学ぶには?
熱狂的なDjangoファンである有志の方々が、公式ドキュメントを翻訳してくれています。
こちらは、Djangoのバージョン1.4ドキュメントの和訳です。
http://docs.djangoproject.jp/en/latest/
また、Djangoの最新バージョンは1.9ですが、チュートリアル部分は既に和訳されています。
https://docs.djangoproject.com/ja/1.9/intro/
日本ではマイナーとはいえ、Djangoは他のPythonフレームワークに比べると利用者も多く、情報も豊富です。
グーグル検索では、Djangoの有益な情報を発信しているブログ等も見つかるでしょう。