W naszym kraju prym lidera w tworzeniu aplikacji webowych wiedzie tzw. święta trójca – PHP/MYSQL/JS i nie zapowiada się na to, by prędko ustąpiła ona miejsca innym technologią. Mnogość serwerów, małe koszty i WordPress to ogromna zaleta na początek. Nie zmienia to faktu, że na rynku istnieją inne technologie i narzędzia, które umożliwiają łatwe, szybkie i bezpieczne tworzenie aplikacji webowych. Na przykład: Ruby on Rails (Ruby), Node Js (JavaScript), Flask (Python), Django (Python) i inne. Nie wrzucam tu celowo technologii JVM i Microsoftu ze względu na różnice w samym języku.

Czym jest Framework Django

W tym tutorialu skupimy się na Python Django, frameworku webowych napisanym (jak sama nazwa wskazuje) w Pythonie przez Django Software Foundation. Django to taki zbiór narzędzi, dzięki którym tworzenie stron internetowych oraz aplikacji webowych jest szybkie i łatwe.

Gdy tworzysz aplikację webowe, często potrzebujesz tych samych narzędzi: system uwierzytelniania użytkowników (logowanie, rejestracja, wylogowanie etc.), panel admina, bezpieczny system formularzy, narzędzia związane z przesyłaniem plików, routing itd.

Na szczęści programiści już dawno temu zauważyli, że web developerzy mają przed sobą, przeważnie te same problemy. Stworzyli frameworki (Django to jeden z nich), które dostarczają gotowe komponenty do rozwiązywania szablonowych problemów przy budowie aplikacji.

Frameworki istnieją, by oszczędzić Ci wyważania otwartych drzwi i ułatwić Ci proces tworzenia nowej aplikacji.

Cechy Django:

  • automatycznie generowany panel admina z możliwością modyfikacji
  • MVC – tutaj MVT – wzorzec: model – view – template. Oddzielenie logiki biznesowej od widoków i szablonów
  • łatwy system szablonów
  • wsparcie dla wielojęzycznych aplikacji
  • duża skalowalność i wydajność pod obciążeniem
  • wbudowany serwer do testowania aplikacji
  • łatwy ORM dla baz danych
  • obsługuje praktycznie wszystkie najpopularniejsze bazki

Co w tym tutorialu dla Python Django?

Fakt jest taki, że dokumentacja Django jest bardzo dobra. Posiada świetny tutorial, w którym programista szybko zbuduję aplikację, w której pozna podstawowe mechanizmy Django (modele, szablony, formularzem, deployment apki i inne). Tutorial i część dokumentacji jest w języku polskim dla opornych, ale angielski to podstawa.

W naszym tutorialu nie chciałbym powtarzać się i tworzyć kolejny system blogowy, tylko dostarczać rozwiązania, których nie ma w dokumentacji, a są często wyszukiwane na ‘stacku’. Np. automatycznie generowany ‘slug’ w linkach, walidacja formularzy i inne mechanizmy.

W kolejnym wpisie zaczynamy powoli zapełniać naszą bazę.