Jeśli interesuje Cię tworzenie stron internetowych, na pewno zainteresuje Cię Django. Django to zasadniczo platforma programistyczna oparta na języku Python. Został zaprojektowany, aby zaoszczędzić dużo czasu i sprawić, że tworzenie stron internetowych będzie znacznie prostsze i przyjemniejsze. Możesz używać Django do budowania i utrzymywania wysokiej jakości aplikacji internetowych bez większego zamieszania.

Samo tworzenie stron internetowych jest mieszanką kreatywności i elementów zabawy oraz mnóstwem powtarzalnych rzeczy. To, co robi Django, pozwala skupić się na zabawnych elementach i kluczowej części twojej aplikacji internetowej, jednocześnie sprawiając, że powtarzające się części są mniej kłopotliwe. Innymi słowy, zapewnia skrót do częstych zadań programistycznych i abstrakcji typowych wzorców w tworzeniu stron internetowych. Daje również jasne konwencje dotyczące rozwiązywania problemów. Robi to wszystko, zapewniając jednocześnie swobodę pracy poza zakresem ramowym w razie potrzeby.

Co to jest struktura sieciowa?

Oczywiście, zanim przedstawimy Django, musimy najpierw wiedzieć, jakie są frameworki, biorąc pod uwagę ich znaczenie w dzisiejszych aplikacjach internetowych. Aby zrozumieć frameworki sieciowe, spójrzmy, jak koduje się aplikacja Python, gdy nie używasz frameworka. Najprostszym sposobem na to jest Common Gateway Interface (CGI). Wystarczy utworzyć skrypt z wyjściem HTML, a następnie zapisać skrypt za pomocą. rozszerzenie cgi do serwera WWW. W przypadku prostych stron najlepszym rozwiązaniem jest pisanie od zera. Kod jest łatwiejszy do zrozumienia i nie ma innego kodu do odczytania. Wdrożenie jest również prostsze.

Pomimo swojej prostoty, podejście wiąże się z kilkoma wyzwaniami. Na przykład, co byś zrobił, gdybyś potrzebował wielu części aplikacji, aby połączyć się z bazą danych? Jeśli zastosujesz powyższą metodę, będziesz musiał zduplikować kod połączenia bazy danych w każdym skrypcie CGI. Może to być nie tylko uciążliwe, ale może również zwiększyć ryzyko wkradnięcia się błędu ludzkiego. Jednak łatwiejszą metodą byłoby umieszczenie tego kodu we wspólnej funkcji. Gdy kod zostanie ponownie użyty w różnych środowiskach z osobnym hasłem i bazą danych, będziesz musiał skonfigurować kod dla każdego określonego środowiska.

Ponadto, jeśli nie masz dużego doświadczenia z Pythonem, bardziej prawdopodobne jest, że popełnisz mniejsze błędy, które mogą spowodować awarię aplikacji. Logika strony idealnie oddzieliłaby się od elementów wyświetlanych HTML, aby edytor mógł edytować każdy element bez wpływu na inny.

Struktura internetowa rozwiązuje te problemy, tworząc infrastrukturę do programowania aplikacji. To pomaga skupić się na pisaniu bardziej łatwego w utrzymaniu i czystszego kodu. To właśnie robi Django.

Model-View-Controller

Django ściśle przestrzega wzorca Model-View-Controller (MVC) do tego stopnia, że ​​można go niemal zakwalifikować jako środowisko MVC. Ten wzorzec dzieli modelowanie domen, prezentacje i działania użytkownika na trzy unikalne klasy. Aby to lepiej zrozumieć, wystarczy spojrzeć na skrypt CGI w Pythonie.

Standardowy skrypt CGI będzie zawierał wstępne elementy HTML interfejsu, a następnie połączenie z bazą danych. Oto przykładowy kod połączenia z bazą danych w Pythonie CGI:

connection = MySQLdb.connect (user = 'ABC', passwd = 'xxxxxxxx', db = 'my_db')

Następnie masz polecenie wykonania do uruchomienia zapytania. Następnie masz trochę HTML, aby wyświetlić wyniki zapytania w interfejsie. Na koniec zamykasz połączenie prostą linią:

connection.close ()

Teraz w Django masz trzy pliki Pythona, identyfikowane z nimi. sufiks py. Pierwszy to tabele bazy danych, models.py. Drugi zawierałby logikę aplikacji views.py. A trzeci miałby konfigurację adresu URL urls.py. Na koniec będziesz mieć elementy HTML do prezentacji wyników w interfejsie. Kluczem jest tutaj rozdział na różne pliki Pythona; nie musisz się martwić składnią.

Plik models.py zawiera opis tabeli bazy danych. Korzystając z tej klasy Python, możesz tworzyć, usuwać, pobierać i aktualizować rekordy za pomocą prostego kodu Python zamiast powtarzać instrukcje SQL. Plik views.py ma logikę biznesową, a funkcją latest_books () jest widok. Plik urls.py określa, jak wywoływany jest widok dla danego adresu URL. Na przykład możesz zakodować widok, który ma zostać wywołany w przypadku, gdy przeglądarka załaduje adres URL domeny / przykład /. Oznacza to, że jeśli twoją domeną jest abc.com, wizyta pod adresem URL abc.com/example/ wywołałaby tę funkcję.

Szablon HTML opisuje projekt strony. Wykorzystuje język szablonów i podstawowe instrukcje logiczne. W sumie elementy te są zgodne ze wzorem MVC.

MVC jest metodą opracowywania oprogramowania, ponieważ model, który jest kodem dostępu i definiowania danych, jest niezależny od kontrolera, który jest logiką routingu żądań, która jest również oddzielna od widoku, czyli interfejsu użytkownika. MVC jest użyteczny, ponieważ elementy są bardzo luźno połączone. Każda część aplikacji internetowej ma zatem swoje własne cele i może być niezależnie zmieniana bez konieczności drastycznej zmiany innych elementów. Na przykład możesz zmienić adres URL w dowolnej części aplikacji, co zmieniłoby implementację bez dotykania renderującego go kodu Python. Możesz zmienić nazwę tabeli w bazie danych i określić zmiany w jednym miejscu bez zastępowania dziesiątek plików.

Polecane kursy

  • Program w systemie Windows 10
  • Kurs profesjonalnego testowania oprogramowania
  • Pakiet szkoleniowy dotyczący programowania w języku Python
  • Ukończ szkolenie Django

Krótka historia Django

Teraz, gdy wiesz już trochę o frameworkach internetowych, nadszedł czas, aby zagłębić się w historię Django. Wiedza o pochodzeniu Django może pomóc ci lepiej zrozumieć, jak działa i jak obsługiwać skróty. Jeśli tworzysz aplikacje internetowe, prawdopodobnie znasz już problemy związane z CGI. Klasyczna ścieżka tworzenia stron internetowych wygląda następująco:

  1. Piszesz aplikację internetową od podstaw
  2. Piszesz drugą aplikację
  3. Zdajesz sobie sprawę, że istnieje kilka wspólnych elementów między tymi dwoma aplikacjami
  4. Refaktoryzujesz kod, aby aplikacja 1 miała taki sam kod jak drugi
  5. Powtórz 2-4 kilka razy
  6. Zdajesz sobie sprawę, że stworzyłeś ramę

Tak właśnie powstał Django. Został utworzony z rzeczywistych aplikacji napisanych przez zespół programistów internetowych w Kansas. Został stworzony w 2003 roku, kiedy programiści WWW Adrian Holovaty i Simon Willison zaczęli używać Pythona do tworzenia aplikacji.

Zespół World Online, odpowiedzialny za utrzymanie i produkcję kilku lokalnych serwisów informacyjnych, dostrzegł ogromne korzyści w środowisku tworzenia stron internetowych podyktowanym terminami dziennikarstwa. W przypadku witryn dziennikarze i kierownictwo chcieli, aby funkcje były dodawane, a aplikacje budowane według szybkiego harmonogramu, z zachowaniem dni lub godzin wypowiedzenia. Następnie dwaj programiści utworzyli platformę programistyczną do oszczędzania czasu i tworzenia aplikacji, które można utrzymywać w wyznaczonym terminie.

Zespół wypuścił framework jako oprogramowanie open source latem 2005 roku, nazywając go Django po Django Reinhardt, prawdopodobnie jednym z największych gitarzystów jazzowych wszechczasów. Od tego czasu Django zyskał popularność jako projekt open source z tysiącami sympatyków, współpracowników i użytkowników na całym świecie. Dwóch oryginalnych programistów, Jacob i Adrian, nadal udzielało swoich głównych wskazówek dotyczących rozwoju frameworka.

Ale dlaczego w ogóle omawiamy historię Django? Z dwóch powodów. Po pierwsze, pomaga zidentyfikować i wyjaśnić „najsłodsze miejsce” oprogramowania. Django wywodzi się ze środowiska wiadomości i dlatego jest wyposażony w funkcje najlepiej dostosowane do stron zorientowanych na treść, takich jak Washington Post, Amazon i Craigslist, oferujących dynamiczne informacje oparte na bazie danych. Mimo to Django jest również dobry dla każdej dynamicznej strony internetowej. Drugim powodem jest to, że historia Django pomaga zrozumieć, w jaki sposób ukształtowała się kultura jej społeczności.

Django powstało z kodu w świecie rzeczywistym, a nie z produktu komercyjnego lub ćwiczenia akademickiego. W rezultacie jest bardzo skoncentrowany na rozwiązywaniu problemów, z którymi borykają się pierwotni twórcy stron internetowych oraz problemów, z którymi wciąż borykają się obecni programiści. Oznacza to, że Django widzi prawie codzienne ulepszenia. Ekipa zajmująca się konserwacją ram ma szczególny interes, aby upewnić się, że narzędzie oszczędza czas programistom i tworzy łatwe w utrzymaniu aplikacje oraz te, które działają dobrze przy dużych obciążeniach. Innymi słowy, wszyscy chcą ułatwić sobie życie.

Instalowanie Django

Dlatego powinno być już całkiem jasne, że Django jest narzędziem do uproszczenia tworzenia stron internetowych. Jednak samo zainstalowanie tego narzędzia może zająć kilka kroków ze względu na liczbę ruchomych części we współczesnym środowisku programistycznym.

Django jest w zasadzie kodem Pythona, więc działa wszędzie tam, gdzie robi Python, w tym także na niektórych telefonach komórkowych. Załóżmy, że instalujesz go na komputerze stacjonarnym, laptopie lub serwerze. Ponieważ Django jest napisane w języku Python, najpierw musisz go zainstalować. Podstawowe frameworki Django w dowolnej wersji Pythona od wersji 2.5. Jeśli nie masz pewności, co wybrać, wybierz najnowszą wersję języka Python, ponieważ mają one funkcje językowe i ulepszenia wydajności, które mogą okazać się przydatne.

Jeśli korzystasz z systemu Mac lub Linux, prawdopodobnie masz już Python na swoim komputerze. Możesz to sprawdzić, przechodząc do wiersza polecenia i wpisując „python” w wierszu polecenia. Powinieneś zobaczyć coś takiego:

Python 3.5.1 (v3.5.1: 37a07cee5969, 6 grudnia 2015, 01:54:25)

(MSC v.1900 64 bit (AMD64)) na Win32

Aby uzyskać więcej informacji, wpisz „pomoc”, „prawa autorskie”, „kredyty” lub „licencja”.

>>>

Jeśli nie widzisz tego, musisz go pobrać i zainstalować. Po zainstalowaniu musisz pobrać i zainstalować Django. Możesz wybrać jedną z dwóch wersji: najnowszą oficjalną wersję lub najnowszą wersję dla programistów. To, co wybierzesz, zależy od tego, czego chcesz. Jeśli chcesz przetestowaną, stabilną wersję, przejdź do oficjalnej wersji. Jeśli chcesz czegoś z najnowszymi funkcjami i chcesz wesprzeć społeczność, a także poradzić sobie z brakiem stabilności, wybierz wersję dla programistów.

Na początek najlepiej przejść do oficjalnej wersji. Najnowszy można znaleźć na stronie projektu Django. Jeśli masz dystrybucję Linuksa z pakietem Django, wybierz wersję dystrybutora, aby uzyskać także aktualizacje zabezpieczeń.

Konfigurowanie bazy danych

Jedynym warunkiem Django jest posiadanie działającej instalacji Pythona. Po skonfigurowaniu możesz od razu zacząć pisać aplikację internetową. Jednak, jak wspomniano wcześniej, Django został opracowany z naciskiem na oparte na zawartości aplikacje sieciowe oparte na bazie danych. Szanse są takie, że stworzysz stronę internetową opartą na bazie danych. W takim przypadku musisz skonfigurować serwer bazy danych.

Django obsługuje cztery silniki baz danych: MySQL, Oracle, SQLite 3 i PostgreSQL. Wszystkie silniki działają równie dobrze w większości z podstawową ramą. PostgreSQL jest zalecany, jeśli nie masz powiązań ze starszym systemem i możesz wybrać zaplecze bazy danych.

Aby skonfigurować bazę danych, musisz zainstalować i skonfigurować sam serwer. Każda wybrana baza danych ma swój własny sposób konfiguracji, więc musisz się do tego odwołać. Po drugie, musisz zainstalować bibliotekę Python dla tego konkretnego zaplecza bazy danych. Jest to kod innej firmy do połączenia Pythona z bazą danych.

SQLite jest zalecany, jeśli eksperymentujesz z Django i nie chcesz instalować serwera. Nie wymaga instalacji; może po prostu odczytywać i zapisywać dane w jednym pliku w systemie i jest obsługiwany przez Python w wersji 2.5 i nowszej. Windows utrudnia uzyskanie plików binarnych sterownika bazy danych.

Jeśli zdecydujesz się na MySQL, potrzebujesz MySQL 4.0 lub nowszego, ponieważ starsze wersje nie obsługują funkcji Django. Musisz także zainstalować pakiet MySQLdb ze strony projektu Django. Jeśli używasz Linuksa, system zarządzania pakietami Twojej dystrybucji może mieć pakiet o nazwie „mysql-python”, „python-mysqldb” lub „python-mysql”.

Django współpracuje z wersją 9i lub wyższą serwera bazy danych Oracle. Musisz także zainstalować bibliotekę cx_Oracle ze strony internetowej cx-Oracle. Alternatywnie możesz użyć Django bez bazy danych, jeśli chcesz go używać tylko do obsługi dynamicznych stron bez odwoływania się do bazy danych. Powiedziawszy to, niektóre narzędzia w Django wymagają bazy danych, a jej brak spowoduje, że ich nie zauważysz.

Polecane artykuły

Oto kilka artykułów, które pomogą ci uzyskać więcej informacji na temat Python i Django dla Web Development, więc po prostu przejdź przez link.

  1. Python vs JavaScript - poznaj 11 różnic między USA
  2. 10 najlepszych wywiadów na temat tworzenia stron internetowych, które powinieneś wiedzieć
  3. 10 rodzajów programowania w języku Python
  4. Python vs Ruby Performance i ich przydatne zalety
  5. Różnice między kluczami Python a JavaScript
  6. Python vs Go