マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】Django

【OSS情報アーカイブ】Django

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「Django」とは

「Django」基本情報

概要

Django(ジャンゴ)とは、Python実装のWebアプリケーションフルスタックフレームワークです。Webアプリケーション/サービスの迅速開発をサポートします。

基本説明

Djangoを利用すると、迅速に、少ないコードで、優れたWebアプリケーションを構築できます。プロトタイプ(シンプルWebアプリ)などであれば、数分で構築することも可能です。

Djangoは、シンプルで学習コストが低いため、Webフレームワーク初心者にも扱いやすい設計になっています。

経緯

2005年7月、公式リリースされました。

主な特徴

高速開発

Djangoは、Webアプリ開発において、開発コンセプト段階から完成段階まで、できるだけ迅速に構築できるように設計されています。
「コンポーネント再利用性」「拡張性」「迅速開発」「DRY(Don't Repeat Yourself)」などを原則としています。

緩やかな「Model-View-Controller」デザインパターンが導入されており、開発方法に合致する構築を行えます。

Djangoの設計思想の1つとして、「複雑なデータベース主体のWebサイトを簡単に構築できるようにする」というものがあります。
特に「ORM(Object Relational Mapping:オブジェクト関係マッピング)」が優れているため、DBアクセス用コードを1行も記述せずに完成させることも可能です。

Pythonベース

開発言語ベースとして「Python」が選定され、ファイルモデル/データモデルなどの部分にまで、Pythonが一貫して用いられています。

「シンプル言語セット」「学習コストが低い」などの特徴を持つPythonを利用した迅速開発を行えます。

Djangoのコンポーネント

Djangoには、Webアプリ開発で必要とされる機能があらかじめ搭載されています。拡張機能を利用せずに、Django単体のみで完結することも可能です。

主な提供機能

  • 管理画面
  • ユーザー認証
  • サイト案内ページ
  • RSSフィード
  • コンテンツ管理
  • サイトマップ
  • O/Rマッパー
  • URLディスパッチャ
  • Djangoモデルインスタンスのシリアル化機構
  • 軽量スタンドアロンWebサーバ
  • HTMLフォーム検証システム
  • キャッシュフレームワーク
  • カスタム処理実行サポート
  • 内部ディスパッチャシステム
  • 多言語化機構
  • テンプレートエンジン機能拡張機構 など
拡張性

Djangoで扱う各ファイルは、それぞれ役割が決められており、別々に切り分けて開発できます。

それぞれの部品の独立性を高く維持できるため、容易に機能拡張を行え、さまざまな要件に対して柔軟に対応できます。

セキュリティ

Djangoでは、多くのセキュリティリスクに対する対策が施されています。

  • SQLインジェクション
  • クロスサイトスクリプティング
  • クロスサイトリクエスト偽造
  • クリックジャック など

また、ユーザー認証システムでは、ユーザーアカウントとパスワードを安全に管理できる方法が提供されています。

同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Flask」「Bottle」「Tornado」など。

導入事例

Djangoは、「Instagram」「Pinterest」など、多くの実績があります。

オフィシャルサイト

オフィシャルサイト

→Django(Django makes it easier to build better Web apps more quickly and with less code.)

ライセンス情報

Djangoのライセンスは「BSD license」です。

詳細について、こちらを参照ください。
→GitHub →django →LICENSE

ダウンロード

→Django →Download

参考元サイト

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【トレンド解説】超入門「 スマートファクトリー 」🏭

トレンド解説

2024.04.15

【トレンド解説】超入門「 スマートファクトリー 」🏭

「 スマートファクトリー 」への理解を深めるための解説として、初心者向けにわかりやすくまとめた記事です。「新しい工場の概念」「デジタルツインの活用」「IoT技術による最適化」など、現代の製造業に必要な知識を効果的に学べます。 スマートファクトリー の導入によるメリットを具体的に解説しています。

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。