![見出し画像](https://assets.st-note.com/production/uploads/images/40308609/rectangle_large_type_2_c30de2e8396c0a9a35ed9a495339f436.jpg?width=1200)
PythonのWEBフレームワーク、Djangoとは?「できること」「特徴」も解説!!
DjangoはWEBサービス開発のためのフレームワーク
Djangoの読み方
まずは読み方から!
Djangoと書いて、ジャンゴと読みます。
ディージャンゴではないのでご注意ください!
Djangoの歴史
ではDjangoの歴史を見ていきましょう!
Django(ジャンゴ)は、Pythonで実装されたWebアプリケーションフレームワーク。 model-view-controller デザインパターンに緩やかに従う。 もともとはローレンス (カンザス州)にある World Company[1] のために、ニュース系のサイトを管理する目的で開発され、2005年7月に BSD License で公式にリリースされた。フレームワークはジプシー・スウィングのギタリストであるジャンゴ・ラインハルトにちなんで命名された。 wikipedia参照
もともと、ニュース系のサイトを管理する目的で開発されたそうです。
そして名前の由来はギタリストからとっているそう。
ちなみにそのギタリストは↓
(渋いギタリストですね( `ー´)ノ)
DjangoはWEBサービス開発のフレームワーク
Djangoを一言でいうと、Pythonで作られたWEBフレームワークです。
システム開発におけるフレームワークとは・・・
フレームワークとは、アプリケーションソフトを開発する際によく必要をされる汎用的な機能をまとめて提供し、アプリケーションの土台として機能するソフトウェアのことです。 ferret-plus.com引用
フレームワークとはシステム開発におけるいわば土台です。
Djangoの場合はWEBフレームワークですので、WEBサービス開発の土台と思っていただければと思います。
プログラミングの世界ににはライブラリというものも存在しますが、これはあくまで部品(よく使われるプログラムコード)が集まった機能群です。
土台なのか機能群なのかが違いです♪
ちなみにDjangoの公式サイトはこちら
Djangoで「できること」
WEBサービスの構築
DjangoでできることはWEBサービスの構築です。
WEBサイト構築もPythonの得意なことの一つです。Pythonの代表的なWEBフレームワークには「Django」「Bottle」などの多数のフレームワークがあり、海外ではDrop Boxを始めとした有名WebサイトがPythonで書かれるなどWebサイト構築でも多くの実績をあげています。 www.capa.co.jp引用
Pythonであの有名なクラウドサービス「Drop Box」が開発されましたが、Pythonが開発言語として選ばれたのは、DjangoのようなWEBフレームワークの存在が大きいかと思います。
Djangoの「特徴」
①WEBサービス構築に必要な機能が揃っている
WEBサービスを構築するには、様々な機能が必要となります。
例えば、ログインの際のユーザ認証、スムーズに動作するUIなど・・・
DjangoはそれらWEBサービスに必要な機能をまとめて実装できるフレームワークとなっております。
ちなみにこれをフルスタックフレームワークと呼びます。
②Django自体がオープンソース
DjangoはオープンソースのWEBフレームワークとなっております。
オープンソースにはメリットデメリットもありますが、コミュニティが形成され情報が多くなることにより、WEBサービス開発で行き詰ったときに情報がより多く出てくるのは、大きな助けになるかと思います。
③日本語の情報が少ない
②で説明した通り、Djangoはオープンソースなので、情報は多いです。
しかし、日本語での情報は少ない印象です。
理由としては、日本ではPythonで作られるWEBサービスが少ない事が挙げられるかと思います。
ただ、人工知能と相性の良いPythonはこれから日本でもどんどん普及してくるでしょうし、Djangoの情報も増えていくと感じます。
まとめ
個人的にDjangoは非常に優れたWEBフレームワークの一つかと思います。
Ruby on Rails(ルビーのWEBフレームワーク)と比べれることも多いですが、人工知能が普及するであろうこれからの時代、Pythonで書けるDjangoがWEBサービス構築に選ばれることも増えると思いますね!
最後までお読みいただきありがとうございました!