Django bemutató: Jellemzők, Architecture & History
⚡ Okos összefoglaló
A Django egy ingyenes, nyílt forráskódú Python Egy model-view-template mintára épülő webes keretrendszer, amely lehetővé teszi a biztonságos, skálázható, adatbázis-vezérelt weboldalak gyors fejlesztését újrafelhasználható komponensek, automatikus adminisztrációs felület és akkumulátoros kialakítás révén.

A Django működteti az internet néhány legnagyobb webhelyét, miközben keeping A mindennapi fejlesztés gyors és szervezett. Mielőtt megismerkednénk a funkcióival, az architektúrájával és a történetével, az alábbi szakaszok a webes keretrendszerek alapjaival és a Django egyediségével kezdődnek.
Django bemutató összefoglaló
Ez a Django oktatóanyag a nulláról lefedi az összes alapvető témát. Ebben az oktatóanyagban olyan fogalmakat fogsz megtanulni, mint például, hogy mi a Django, a története, a funkciói, a Django keretrendszer jellemzői, a Django összetevői, előnyei és hátrányai, és még sok más.
Mielőtt megtanulnánk a Django-t, nézzük meg:
Mi az a webes keretrendszer?
A webes keretrendszer egy kódkönyvtár, amely segít rugalmas, skálázható és karbantartható dinamikus weboldalak, webes alkalmazások vagy webszolgáltatások létrehozásában. Különböző webes keretrendszerek közé tartozik a Zend for PHP, Ruby on Rails Rubynak és másoknak.
Mi az a Django?
Django egy webfejlesztési keretrendszer Python amely szabványos módszereket kínál a gyors és hatékony weboldalfejlesztéshez. Ennek a magas szintű webes keretrendszernek az elsődleges célja összetett, adatbázis-vezérelt weboldalak létrehozása. Segít minőségi webes alkalmazások létrehozásában és karbantartásában. Lehetővé teszi a fejlesztési folyamat zökkenőmentessé és időtakarékossá tételét a gyors fejlesztés érdekében.
Miért Django? A Django legfontosabb előnyei
Íme a Django fő előnyei:
- A Django könnyen beállítható és futtatható. Számos lehetőséget kínál az induláshoz.
- Használatra kész felhasználói felületet biztosít az adminisztratív tevékenységekhez.
- Beépített internacionalizációs rendszerének köszönhetően többnyelvű weboldalakat tesz lehetővé.
- Segítségével gyorsan kielégítheti a hatalmas forgalmi igényeket.
- A Django-t mindenféle tartalomkezelő rendszer, közösségi hálózat és tudományos számítástechnikai platform létrehozására használják.
- A Django segít a teljes körű alkalmazástesztelésben.
- Segít az API HTML-kimenettel történő dokumentálásában.
- A REST keretrendszer számos hitelesítési protokollt támogat.
- Engedélyeket és szabályozási szabályzatokat kínál.
- Széles körben használják egyetlen felhasználótól érkező API-kérések sebességkorlátozására.
A Django története
| Év | Mérföldkő |
|---|---|
| 2003 | A projektet Adrian Holovaty és Simon Willison indította el belső projektként a Lawrence Journal-World újságnál. |
| július 2005 | 2005 júliusában jelent meg „Django” címmel, Django Reinhardt dzsesszgitárosról elnevezve. |
| június 2008 | Kijelentették, hogy egy Django szoftver Foundation (DSF) fenntartaná a Django-t. |
| 29 July 2009 | A Django 1.1 olyan funkciókkal jelent meg, mint az aggregátumok és a tranzakcióalapú tesztek. |
| 17 May 2010 | Megjelent a Django 1.2. A frissítés olyan funkciókat kínált, mint a több adatbázis és az e-mail backend, valamint fejlesztések történtek a munkamenetek és a sütik tekintetében. |
| Március 23 2011 | Az 1.3-as verzió olyan funkciókat vezetett be, mint az osztályalapú nézetek és a statikus fájlok. |
| Március 23 2012 | Az 1.4-es verzió olyan új funkciókkal jelent meg, mint az időzónák és a böngészőn belüli tesztelés. |
| 26 február 2013 | Az 1.5-ös verzióhoz érkezett a következő Python 3 támogatási és konfigurálható felhasználói modellfunkció. |
| 6 november 2013 | Az 1.6-os verzió adatbázis-tranzakciókezelési és kapcsolat-pooling funkciókkal érkezett. |
| 2 szeptember 2014 | Az 1.7-es verzió új funkciókat tartalmazott, mint például az alkalmazások betöltése, a migráció és a konfiguráció. |
| 1 április 2015 | Natív támogatást biztosítottak több sablonmotorhoz. |
| 1 Dec 2015 | Az 1.9-es verzióban bevezették az automatikus jelszó-érvényesítési funkciót. |
| 1 augusztus 2016 | Az 1.10-es verzióban teljes szöveges keresés érhető el a következőre: PostgreSQL elindult. |
| 4 április 2017 | Az 1.11-es verzió volt az utolsó, amely támogatta a Python 2.7. |
| 2 Dec 2017 | A 2.0-s verzió lett az első Python Csak 3-as kiadású verzió. |
| 1 augusztus 2018 | A 2.1-es verzió modell „megtekintés” jogosultságot támogató funkciókkal érkezett. |
| 2021 | Eltávolították a Django 3.0 támogatását, és hozzáadták a Django 3.2 támogatását. |
Ebben a Django kezdőknek szóló oktatóanyagban most a Django funkcióival ismerkedünk meg.
A Django jellemzői
Az alábbiakban a Django funkcióiról olvashat:
- Segít meghatározni a mintákat a következőkhöz: URLs az alkalmazásodban.
- Egyszerű, de erőteljes URL rendszer.
- Beépített hitelesítési rendszer.
- Objektumorientált programozási nyelven futó adatbázis, amely kategóriájában a legjobb adattárolást és -visszakeresést kínálja.
- Az automatikus adminisztrációs felület funkció lehetővé teszi az elemek hozzáadását, szerkesztését és törlését. Az adminisztrációs panelt az igényeid szerint testreszabhatod.
- A gyorsítótár-keretrendszer több gyorsítótár-mechanizmussal rendelkezik.
Ebben a Django keretrendszer bemutatóban most a Django jellemzőiről fogunk tanulni.
A Django jellemzői
Íme a Django főbb jellemzői:
- Lazán csatolt – A Django segít abban, hogy a verem minden elemét függetlenítsd a többitől.
- Less kód – Biztosítja a hatékony fejlesztést.
- Nem ismétlődik – Mindent pontosan egy helyen kell kidolgozni, ahelyett, hogy újra és újra megismételnénk.
- Gyors fejlődés – A Django gyors és megbízható alkalmazásfejlesztést kínál.
- Egységes kialakítás – A Django letisztult dizájnt kínál, és megkönnyíti a legjobb webfejlesztési gyakorlatok követését.
A következő Django kezdő oktatóanyagban a Django architektúrájáról fogunk tanulni.
Django Architectúra: MVC és MVT
Az alábbiakban a Django részletes architektúrája látható:
Django Architectúra
MVC minta
Amikor olyan alkalmazásokról beszélünk, amelyek felhasználói felületet (webes vagy asztali) biztosítanak, általában MVC architektúráról beszélünk. Az MVC minta a Model, a View és a Controller architektúrákon alapul.
Az Modell meghatározza az adatszerkezetet és gondoskodik az adatbázis lekérdezéséről.
Az Kilátás meghatározza, hogy milyen adatokat kell megjeleníteni, és HTTP választ ad vissza.
Az ellenőr az alkalmazás azon része, amely a felhasználói interakciót kezeli.
Django MVC-MVT minta
A Model-View-Template (MVT) egy más koncepció, mint az MVC. A két architektúraminta közötti fő különbség az, hogy maga a Django kezeli a vezérlő részt (a szoftverkódot, amely a modell és a nézet közötti interakciókat vezérli). A sablon egy HTML fájl, amelyet egy Django Template Language fájllal, más néven DTL-lel kevernek.
Az alábbi ábra azt mutatja, hogyan működnek együtt az MVT minta összes összetevője egy adott felhasználói kérés kiszolgálása során.
MVT Architectúra
Amint a fenti ábrán látható, egy felhasználó erőforrást kér a Django-tól. A Django vezérlőként működik, és ellenőrzi az elérhető erőforrásokat a URL.
Ha a URL A térképek esetében egy nézetet hívnak, amely interakcióba lép a modellel és a sablonnal. A Django ezután válaszol a felhasználónak, és válaszként elküld egy sablont.
Ebben a Django kezdőknek szóló oktatóanyag-sorozatban most a Django összetevőiről fogunk tanulni.
A Django összetevői
Forma
A Django hatékony űrlapkönyvtárral rendelkezik, amely az űrlapokat HTML-ként kezeli. A könyvtár segít a beküldött adatok érvényesítésében és konvertálásában Python típusok.
Hitelesítés
Kezeli a felhasználói fiókokat, csoportokat, süti alapú felhasználói munkameneteket és egyebeket.
admin
Beolvassa a metaadatokat a modellekben, hogy robusztus felületet biztosítson, amely felhasználható a webhely tartalmának kezelésére.
Nemzetközivé
A Django támogatja a szövegek különböző nyelvekre fordítását, valamint a dátumok, időpontok, számok és időzónák területspecifikus formázását.
Biztonság
A Django a következő támadások ellen nyújt védelmet:
- Site-request Forgery (CSRF)
- Cross-site scripting
- SQL injektálás
- Clickjacking
- Távoli kódfuttatás
A Django-t használó híres cégek
Íme néhány cég, amelyek Django-t használnak:
- Bitbucket
- Disqus
- NASA
- PBS (Public Broadcasting Service)
- Mozilla
- The Washington Post
- A New York Times
- Los Angeles Times
- Az őrző
- National Geographic
- Discovery Channel
A Django használatának hátrányai
Íme néhány hátránya a Django használatának:
- Egyetlen folyamat nem képes egyszerre több kérést kezelni.
- A Django egy nagyon monolitikus eszköz.
- Az összetevők együttesen kerülnek telepítésre, ami zavart okozhat.
- A Django használatához a teljes rendszer ismerete szükséges.
- Szorosan összekapcsolja a webes alkalmazás komponenseit.
- A kisebb feladatokhoz hosszadalmas programozást kell végeznie.


