Pokud vás zajímá vývoj webových aplikací, určitě by vás Django zajímal. Django je v podstatě webový vývojový rámec založený na Pythonu. Byl navržen tak, aby vám ušetřil spoustu času a učinil vývoj webu mnohem jednodušším a zábavnějším. Pomocí nástroje Django můžete vytvářet a udržovat vysoce kvalitní webové aplikace, aniž byste museli dělat starosti.

Samotný vývoj webových stránek je kombinací kreativity a zábavných prvků a spoustou opakujících se věcí. To, co Django dělá, je to, že vám umožní soustředit se na zábavné bity a klíčovou část vaší webové aplikace, zatímco opakující se části méně zmatků. Jinými slovy, poskytuje zkratku k častým programovacím úlohám a abstrakcím běžných vzorců ve vývoji webu. Poskytuje také jasné konvence o řešení problémů. Dělá to všechno a zároveň vám v případě potřeby dává svobodu pracovat mimo rámec rámce.

Co je to webový rámec?

Samozřejmě, než představíme Django, musíme nejprve vědět, jaké webové rámce jsou, vzhledem k jejich důležitosti v dnešních webových aplikacích. Abychom porozuměli webovým rámcům, podívejme se, jak aplikace Python kóduje, když nepoužíváte rámec. Nejjednodušší způsob, jak toho dosáhnout, je s Common Gateway Interface (CGI). Stačí vytvořit skript s výstupem HTML a skript uložit pomocí. cgi rozšíření na webový server. Pro jednoduché stránky je pravděpodobně nejlepší způsob zápisu od začátku. Kód je jednodušší pochopit a neexistuje žádný jiný kód, který by se měl číst. Nasazení je také jednodušší.

I přes svou jednoduchost přichází tento přístup s několika výzvami. Co byste například udělali, kdybyste potřebovali více částí aplikace pro připojení k databázi? Pokud půjdete výše uvedenou metodou, budete muset duplikovat připojovací kód databáze v každém skriptu CGI. To může být nejen těžkopádné, může to také zvýšit šance na plížení se lidských chyb. Nejjednodušší metodou by však bylo dát tento kód do sdílené funkce. Pokud je kód znovu použit v různých prostředích se samostatným heslem a databází, budete muset nakonfigurovat kód pro každé konkrétní prostředí.

Také pokud nemáte s Pythonem mnoho zkušeností, je pravděpodobnější, že uděláte menší chyby, které mohou způsobit selhání aplikace. Logika stránky by se ideálně oddělila od zobrazovacích prvků HTML, takže editor by mohl upravovat každý prvek bez ovlivnění druhého.

Webový rámec řeší tyto problémy vytvořením infrastruktury pro programové aplikace. To vám pomůže soustředit se na psaní více spravovatelného a čistšího kódu. To je také to, co dělá Django.

Ovladač zobrazení modelu

Django pečlivě sleduje model-View-Controller (MVC), natolik, že mohl být klasifikován jako rámec MVC. Tento model rozděluje modelování domén, prezentace a akce založené na uživatelských vstupech do tří jedinečných tříd. Abyste to lépe pochopili, prostudujte si skript Python CGI.

Standardní skript CGI bude zahrnovat některé úvodní prvky HTML pro rozhraní frontend a poté připojení k databázi. Zde je příklad kódu databázového připojení v Python CGI:

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

Poté máte příkaz k provedení dotazu. Pak budete mít nějaké HTML pro zobrazení výsledků dotazu v klientském rozhraní. Nakonec ukončíte spojení jednoduchou linkou:

connection.close ()

Nyní máte s Djangem tři Python soubory identifikované s jejich. přípona py. První by byly databázové tabulky, models.py. Druhý by obsahoval aplikační logiku, views.py. A třetí by měl konfiguraci URL, urls.py. Nakonec byste měli mít nějaké HTML prvky, které budou prezentovat výsledky na front-endu. Klíčem je oddělení na různých souborech Pythonu; nemusíte se starat o syntaxi.

Soubor models.py má popis databázové tabulky. Pomocí této třídy Python můžete vytvářet, mazat, načítat a aktualizovat záznamy pomocí jednoduchého kódu Python místo opakování příkazů SQL. Soubor views.py má obchodní logiku a funkce latest_books () je pohled. Soubor urls.py určuje, jaké zobrazení se pro danou adresu URL volá. Například byste mohli kódovat pohled, který má být vyvolán v případě, že prohlížeč načte adresu URL domény / příklad /. To znamená, že pokud je vaše doména abc.com, návštěva adresy URL abc.com/example/ by tuto funkci vyvolala.

Šablona HTML popisuje návrh stránky. Používá jazyk šablony a základní logické příkazy. Celkově tyto kousky odpovídají vzoru MVC.

MVC je metoda vývoje softwaru v tom, že model, který je kódem pro přístup a definování dat, je oddělen od ovladače, což je logika směrování požadavků, která je také oddělená od pohledu, což je uživatelské rozhraní. MVC je užitečné v tom, že komponenty jsou velmi volně spojené. Každá část webové aplikace má tedy své vlastní jediné účely a může být nezávisle měněna bez nutnosti drasticky měnit jiné kusy. Například můžete změnit URL v jakékoli části aplikace a změnilo by to implementaci, aniž byste se dotkli kódu Python, který ji vykresluje. Můžete přejmenovat tabulku v databázi a určit změny na jednom místě, aniž byste nahradili desítky souborů.

Doporučené kurzy

  • Program ve Windows 10
  • Kurz profesionálního testování softwaru
  • Balíček Python Programming Training
  • Kompletní Django školení

Stručná historie Djanga

Nyní, když víte něco o webových rámcích, je čas se trochu ponořit do historie Djanga. Vědět, odkud Django pochází, vám může pomoci lépe pochopit, jak to funguje a jak ovládat jeho zkratky. Pokud jste vytvářeli webové aplikace, pravděpodobně už znáte problémy spojené s CGI. Klasická cesta vývoje webu vypadá takto:

  1. Píšete webovou aplikaci od základu
  2. Napíšete druhou aplikaci
  3. Uvědomujete si, že mezi oběma aplikacemi existuje několik společných prvků
  4. Můžete změnit kód tak, aby aplikace 1 měla stejný kód jako druhý
  5. Několikrát opakujete 2-4
  6. Uvědomujete si, že jste vytvořili rámec

Takto vznikl také Django. Byl vytvořen z aplikací v reálném světě, které napsal tým pro vývoj webových aplikací v Kansasu. Byl vytvořen v roce 2003, kdy weboví programátoři Adrian Holovaty a Simon Willison začali používat Python pro vytváření aplikací.

Tým World Online, zodpovědný za údržbu a produkci několika místních zpravodajských serverů, viděl obrovské výhody v prostředí pro vývoj webových aplikací, které bylo diktováno termíny žurnalistiky. Pro weby chtěli novináři a management přidávat funkce a aplikace stavět na rychlém rozvrhu s pouhými dny nebo hodinami výpovědi. Oba vývojáři poté vytvořili rámec pro vývoj webových aplikací, který šetří čas a buduje udržovatelné aplikace ve stanovených termínech.

Tým poté v létě 2005 vydal rámec jako software s otevřeným zdrojovým kódem a pojmenoval jej Django po Django Reinhardtovi, pravděpodobně jednomu z největších jazzových kytaristů všech dob. Od té doby se Django etabloval jako populární open source projekt s tisíci příznivců, přispěvatelů a uživatelů po celém světě. Dva z původních vývojářů, Jacob a Adrian, stále dávali své hlavní pokyny pro růst rámce.

Ale proč dokonce diskutujeme o historii Djanga? No, ze dvou důvodů. První je, že pomáhá identifikovat a vysvětlit „sladké místo“ softwaru. Django byl přenášen ze zpravodajského prostředí, a je proto vybaven funkcemi, které se nejlépe hodí pro obsahově zaměřené weby, jako jsou Washington Post, Amazon a Craigslist, které nabízejí databázové a dynamické informace. Django je přesto dobré pro všechny dyamové webové stránky. Druhým důvodem je to, že historie Djanga vám pomůže pochopit, jak se formovala kultura její komunity.

Django byl vytvořen z reálného kódu a ne z komerčního produktu nebo akademického cvičení. Výsledkem je, že se velmi zaměřuje na řešení problémů, kterým čelí původní weboví vývojáři, a problémů, kterým současní vývojáři stále čelí. To znamená, že Django vidí téměř každodenní vylepšení. Posádka údržby rámců má mimořádný zájem, aby se ujistila, že nástroj šetří čas vývojáři a produkuje snadno udržovatelné aplikace a ty, které dobře fungují v těžkém zatížení. Všichni si chtějí věci usnadnit, jinými slovy.

Instalace Django

Takže by nyní mělo být zcela jasné, že Django je nástrojem pro zjednodušení vývoje webu. Instalace samotného nástroje však může vzhledem k počtu pohyblivých součástí v dnešních vývojových prostředích webu trvat několik kroků.

Django je v podstatě Python kód, takže běží kdekoli, kde Python dělá, což zahrnuje i některé mobilní telefony. Předpokládejme, že jej instalujete na plochu, notebook nebo server. Protože Django je psáno v Pythonu, musíte nejprve nainstalovat Python. Základní verze Django s libovolnou verzí Pythonu od 2.5. Pokud si nejste jisti, co si vybrat, vyberte nejnovější verzi Pythonu, protože mají jazykové funkce a vylepšení výkonu, které by vám mohly být užitečné.

Pokud používáte Mac nebo Linux, pravděpodobně již máte v počítači Python. Můžete to ověřit pomocí příkazového řádku a zadáním 'python' do příkazového řádku. Měli byste vidět něco takového:

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

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

Chcete-li získat další informace, zadejte „help“, „copyright“, „kredity“ nebo „licence“.

>>>

Pokud to nevidíte, musíte si jej stáhnout a nainstalovat. Po instalaci musíte stáhnout a nainstalovat Django. Můžete si vybrat ze dvou verzí: nejnovější oficiální verze nebo nová verze pro vývoj webových aplikací. To, co si vyberete, je založeno na tom, co chcete. Pokud chcete testovanou stabilní verzi, vydejte se na oficiální verzi. Pokud chcete něco s nejnovějšími funkcemi a chcete přispět ke komunitě a zvládnete nedostatek stability, jděte na verzi pro vývoj webových aplikací.

Nejprve je nejlepší jít na oficiální vydání. Nejnovější verzi najdete na webových stránkách projektu Django. Pokud máte linuxovou distribuci s balíčkem Django, jděte na verzi distributora, abyste získali také aktualizace zabezpečení.

Nastavení databáze

Jediným předpokladem Djanga je, že máte funkční instalaci Pythonu. Jakmile to nastavíte, můžete začít psát webovou aplikaci hned hned. Jak již bylo zmíněno, Django byl vyvinut se zaměřením na obsahově orientované webové aplikace řízené databází. Je tedy pravděpodobné, že vytvoříte webovou stránku řízenou databází. V takovém případě musíte nastavit databázový server.

Django podporuje čtyři databázové stroje: MySQL, Oracle, SQLite 3 a PostgreSQL. Všechny motory fungují stejně dobře jako hlavní rámec. PostgreSQL se doporučuje, pokud nemáte vazby na starší systém a můžete si vybrat backend databáze.

Chcete-li nastavit databázi, musíte nainstalovat a nakonfigurovat samotný server. Každá databáze, kterou vyberete, má svůj vlastní způsob nastavení, takže je třeba se na to odvolat. Za druhé, musíte nainstalovat knihovnu Python pro tento konkrétní databázový backend. Toto je kód třetí strany pro Python k propojení s databází.

SQLite se doporučuje, pokud experimentujete pouze s Djangem a nechcete instalovat server. Nevyžaduje instalaci; dokáže pouze číst a zapisovat data do jednoho souboru ve vašem systému a je podporována Pythonem 2.5 a vyšším. Windows ztěžuje získání binárních ovladačů databází.

Pokud se rozhodnete pro MySQL, potřebujete MySQL 4.0 nebo vyšší, protože starší verze nepodporují funkce Django. Musíte také nainstalovat balíček MySQLdb ze stránky Django Project. Pokud používáte Linux, může systém pro správu balíků vaší distribuce obsahovat balíček nazvaný 'mysql-python', 'python-mysqldb' nebo 'python-mysql'.

Django pracuje s verzí 9i nebo vyšší Oracle Database Server. Musíte také nainstalovat knihovnu cx_Oracle z webu cx-Oracle. Případně můžete Django použít zcela bez databáze, pokud jej chcete použít pouze k poskytování dynamických stránek bez odkazování na databázi. S tím bylo řečeno, některé nástroje v Djangu vyžadují databázi, a pokud nemáte jeden, způsobíte, že na ně přijdete.

Doporučené články

Zde je několik článků, které vám pomohou získat více podrobností o Pythonu a Djangu pro vývoj webových aplikací, takže stačí projít odkaz.

  1. Python vs JavaScript - Naučte se 11 užitečných rozdílů
  2. 10 nejlepších otázek pro rozhovor s vývojem webu, které byste měli vědět
  3. 10 typů programování v Pythonu
  4. Python vs Ruby Performance a jejich užitečné výhody
  5. Python vs. klíčové rozdíly v JavaScriptu
  6. Python vs Go

Kategorie: