DjangoはPythonに活用されるオープンソースWebアプリケーションフレームワークです。
人工知能(AI)やビッグデータなどトレンドの分野で活躍していることからプログラミング言語の中でも近年人気を集めているPython。DjangoはPython向けのフレームワークの中でも知名度、普及率ともにトップの人気を集めております。この記事ではDjangoを理解するために初心者でも分かる歴史、特徴、基礎知識などを簡単に解説していきます。
Django(ジャンゴ)とはPythonに活用されジャンゴソフトウェア財団によって管理されているWebアプリケーションフレームワークです。2005年にニュース系サイトに利用されることを目的に誕生しました。特徴として『速い』『安全』『柔軟性・拡張性』を掲げております。このようにDjangoを使用すると、より少ないコードで、より迅速に、より優れたWebアプリケーションを構築することができます。
またDjangoというその名の由来はフランスで活躍したジャズバンド「ジプシー・スウィング」のギタリストである『ジャンゴ・ラインハルト』にちなんで名付けられたそうです。Djangoを利用している有名なサービスとして『Instagram』『YouTube』『DropBox』などが挙げられます。数あるPython向けのフレームワークの中でも知名度、普及率ともにトップの人気を集めております。
Pythonとはグイド・ヴァンロッサム氏によって1991年に開発された汎用的に使用されるプログラミング言語です。サーバサイド言語としてWebアプリケーションやデスクトップアプリケーションの開発に使われるだけでなく、組み込み開発、自動処理、統計・解析、機械学習など幅広い領域に対応出来るプログラミング言語として親しまれております。特徴として『コードがシンプルで覚えやすい』『少ない記述で多くの処理が可能』などが挙げられます。Pythonは人工知能(AI)やビッグデータなどトレンドの分野にて重宝されております。
『Pythonにおけるシステム開発を簡単に行えるように用意された枠組みのこと』
PythonフレームワークとはPythonにおけるシステム開発のプログラミングを効率的に実施するために汎用的な機能群をまとめ、システムの骨組みとなるテンプレートまで用意してくれる枠組みのことです。フレームワークを活用することでプログラミングにおける記述コードを最小限に抑えることが出来ます。Pythonフレームワークの代表的な種類としてDjango、Flask、Bottleなどが挙げられます。
Pythonフレームワーク人気どころ6選ついて解説された記事はこちら>>
Djangoの読み方は『ジャンゴ』です。名前の由来はフランスで活躍したスウィングジャズバンドの「ジプシー・スウィング」を立ち上げたギタリスト『ジャンゴ・ラインハルト』にちなんで付けられたものだそうです。
Djangoは2005年7月にエイドリアン・ホロヴァティ氏、サイモン・ウィリソン氏の開発によって誕生しました。2008年9月に最初のマイルストーン『Django1.0』がリリースされました。現在では『Instagram』『YouTube』『DropBox』数々の有名サイトがDjangoを採用しておりPythonフレームワークの中で知名度、普及率共にトップの人気を集めております。2020年現在最新バージョンは『Django3.1』です。バージョンアップについて簡単に以下の年表にまとめておりますのでご覧ください。
年代 | 内容 |
2006年10月 | Django 初版リリース |
2008年5月 | Django 1.0リリース |
2016年8月 | Django 1.1リリース |
2017年12月 | Django 2.0リリース |
2018年8月 | Django 2.1リリース |
2019年4月 | Django 2.2リリース |
2019年12月 | Django 3.0リリース |
2020年8月 | Django 3.1リリース |
Djangoの特徴を見ていきましょう。
Djangoはフルスタックなフレームワークという特徴があります。ユーザインターフェース、データベース、セキュリティなどの全ての環境を用意しております。
Djangoは迅速な開発という特徴があります。公式ページでは『途方もなく速い。』と謳っており、開発者がアプリケーションをコンセプトから完成までできるだけ早く実行できるように設計されています。
Djangoは、PythonプログラムをModel(モデル)、View(ビュー)、Template(テンプレート)の3つの役割に分けて記述するように設計されているというMVTを採用しているという特徴があります。
Django以外のPythonによるシステム開発に用いられる代表的なフレームワークを紹介させていただきます。
Flask(フラスク)とはPythonに活用されるアーミン・ロナッチャー氏によって開発されたWebアプリケーションフレームワークです。2010年4月1日のエイプリールフールに誕生し、アーミン・ロナッチャー氏は「エイプリールフールのジョークで作ったのだが、いつの間にか有名にそして本格的になってしまった」と語っております。特徴として提供される機能を最小限に抑えていることから『マイクロフレームワーク』と呼ばれております。シンプルな作りであることから学習コストが低く、導入障壁が低いこともメリットとして挙げられます。特に小規模でシンプルなWebアプリケーションの開発を実行する際に人気を集めております。
Bottle(ボトル)とはPythonに活用されるマルセル・ヘルカンプ氏によって開発されたWebアプリケーションフレームワークです。2009年7月に高速、シンプル、軽量になるように設計されたマイクロフレームワークとして誕生しました。シンプルさを売りにしていることから標準搭載された機能は限定的なものです。どれほどシンプルかというとBottleは一つのファイルで構成されております。マイクロフレームワークであるFlaskと同様に小規模でシンプルなWebアプリケーションの開発を実行する際に人気を集めております。
Tornado(トルネード)とはPythonに活用されるFriendFeed社によって開発されたWebアプリケーションフレームワークです。2009年に誕生し、FriendFeed社がFacebook社に吸収された後にオープンソース化されました。特徴として『非同期処理』や『同時接続処理』を得意しております。ノンブロッキングネットワークI / Oを使用することで、数万のオープン接続に拡張できるため、 ロングポーリング、 WebSocket、および各ユーザーへの長期間の接続を必要とするその他のアプリケーションに最適です。
Djangoを理解するために初心者でも分かる歴史、特徴、基礎知識などを簡単に解説させていただきました。Djangoを一言で表すと『迅速な開発とクリーンで実用的な設計を促進する高レベルのPythonWebフレームワーク』です。Djangoには「フルスタックなフレームワーク」「迅速な開発」「MVT」といった特徴が挙げられます。Djangoについてこの記事に記載されている最低限の内容は理解しておくようにしましょう。