Django (framework)

Django
Logo Django
Logo programu
ilustracja
Pierwsze wydanie 2005-07-21 21 lipca 2005(dts)[1]
Aktualna wersja stabilna 6.0.2 (3 lutego 2026) [2]
Język programowania Python
Rodzaj framework WWW
Licencja BSD
Strona internetowa
Przykładowy panel administracyjny aplikacji Django
Zarządzanie użytkownikami

Django – wolny i otwarty framework przeznaczony do tworzenia aplikacji internetowych, napisany w Pythonie. Powstał pod koniec 2003 roku jako ewolucyjne rozwinięcie aplikacji internetowych, tworzonych przez grupę programistów związanych z Lawrence Journal-World. W 2005 roku kod Django został wydany na licencji BSD[3]. Nazwa frameworku pochodzi od gitarzysty Django Reinhardta.

Django realizuje wzorzec architektoniczny model-template-view[4] (pokrewny z MVC). Django kieruje się filozofią „batteries included” (z bateriami w zestawie), co oznacza, że w standardzie zawiera kompletny zestaw narzędzi do tworzenia aplikacji internetowych, w tym system uwierzytelniania, obsługę formularzy, migracje baz danych oraz panel administracyjny, bez konieczności instalowania dodatkowych pakietów[5].

Wśród dobrze znanych witryn, które używają Django, znajdują się witryny Pinterest[6], Instagram[7], Fundacji Mozilla[8], Public Broadcasting Service[9] i The Washington Times[10].

Historia

Historia Django rozpoczyna się jesienią 2003 roku, kiedy to programiści gazety Lawrence Journal-World, Adrian Holovaty i Simon Willison, zaczęli używać Pythona do szybkiego tworzenia aplikacji internetowych. W lipcu 2005 roku projekt został opublikowany na licencji BSD. Nazwa Django nawiązuje do słynnego gitarzysty Django Reinhardta.

W czerwcu 2008 roku ogłoszono, że dalszy rozwój frameworka zapewniała będzie nowo utworzona fundacja Django Software Foundation.

Cechy Django

  • Automatycznie generowany i kompletny panel administracyjny, z możliwością dalszego dostosowywania
  • Przyjazne adresy dokumentów z możliwością dowolnego ich kształtowania
  • Prosty lecz funkcjonalny system szablonów czytelny zarówno dla grafików, jak i dla programistów
  • Oddzielenie logiki aplikacji (widok), logiki biznesowej (model), wyglądu (szablony) oraz baz danych
  • Wsparcie dla wielojęzycznych aplikacji (internacjonalizacja)
  • Bardzo duża skalowalność i wydajność pod obciążeniem
  • Wydajne systemy cache'owania, obsługa Memcached
  • Własny, prosty serwer do testowania aplikacji
  • Współpracuje z Apache poprzez WSGI.
  • DRY, czyli zasada „nie powtarzaj się” w odniesieniu do tworzenia aplikacji (np. strukturę bazy danych Django generuje ze zwykłych klas Pythona)
  • Posiada ORM wysokiego poziomu pozwalający na łatwe i bezpieczne operowania na bazach danych bez użycia SQL
  • Wsparcie dla zabezpieczeń przed cross-site request forgery, cross-site scripting, SQL injection, łamania haseł i innych typowych ataków internetowych, większość z nich domyślnie włączona
  • Obsługuje następujące bazy danych: PostgreSQL, MySQL, SQLite oraz Oracle
  • Rozpowszechniany jest na otwartej licencji BSD

Zobacz też

Inne frameworki Pythona

Odpowiedniki w innych językach

Przypisy

  1. ↑ Django 1.0 alpha released!. [dostęp 2010-08-18].
  2. ↑ Django security releases issued: 6.0.2, 5.2.11, and 4.2.28. [dostęp 2026-02-07].
  3. ↑ Często zadawane pytania: Ogólne [online], Dokumentacja Django [dostęp 2026-02-07].
  4. ↑ Django appears to be a MVC framework, but you call the Controller the “view”, and the View the “template”. How come you don’t use the standard names?. [w:] Django Documentation [on-line]. [dostęp 2016-11-02]. (ang.).
  5. ↑ Design philosophies [online], www.djangoproject.com/ [dostęp 2026-02-07] (ang.).
  6. ↑ What is the technology stack behind Pinterest? | Web Development [online], www.quora.com [dostęp 2017-11-22] (ang.).
  7. ↑ What Powers Instagram: Hundreds of Instances, Dozens of Technologies – Instagram Engineering [online], instagram-engineering.tumblr.com [dostęp 2017-11-22] (ang.).
  8. ↑ Python – Learn web development | MDN [online], developer.mozilla.org [dostęp 2017-11-22] [zarchiwizowane z adresu 2012-02-08] (ang.).
  9. ↑ 20 Creative Websites Running Django: – Fearlessflyer.com [online], fearlessflyer.com [dostęp 2017-11-22] (ang.).
  10. ↑ Home [online], opensource.washingtontimes.com [dostęp 2017-11-22] (ang.).

Linki zewnętrzne