Django õpetus: funktsioonid, ArchiTektuur ja ajalugu
⚡ Nutikas kokkuvõte
Django on tasuta ja avatud lähtekoodiga Python Model-View-Template mustrile üles ehitatud veebiraamistik, mis võimaldab turvaliste, skaleeritavate ja andmebaasipõhiste veebisaitide kiiret arendamist korduvkasutatavate komponentide, automaatse administreerimisliidese ja patareidega disaini abil.

Django haldab mõningaid veebis suurimaid saite, hoides samal ajalping igapäevane arendus kiire ja organiseeritud. Enne selle funktsioonide, arhitektuuri ja ajaloo uurimist alustavad allolevad osad veebiraamistike põhitõdede ja Django erilisuse tutvustamisega.
Django õpetuse kokkuvõte
See Django õpetus hõlmab kõiki põhiteemasid nullist. Selles õpetuses õpid selliseid kontseptsioone nagu mis on Django, selle ajalugu, funktsioonid, Django raamistiku omadused, Django komponendid, eelised ja puudused ning palju muud.
Enne Django õppimist uurime lähemalt:
Mis on veebiraamistik?
Veebiraamistik on kooditeek, mis aitab teil luua paindliku, skaleeritava ja hooldatava dünaamilise veebisaidi, veebirakenduse või veebiteenuse. Erinevate veebiraamistike hulka kuuluvad Zend PHP jaoks, Ruby on Rails Ruby ja teiste jaoks.
Mis on Django?
Django on veebiarendusraamistik Python mis pakub standardmeetodeid kiireks ja tõhusaks veebiarenduseks. Selle kõrgetasemelise veebiraamistiku peamine eesmärk on luua keerukaid andmebaasipõhiseid veebisaite. See aitab teil luua ja hallata kvaliteetseid veebirakendusi. See võimaldab teil muuta arendusprotsessi sujuvaks ja ajasäästlikuks kiireks arendamiseks.
Miks Django? Django peamised eelised
Siin on Django peamised eelised:
- Django seadistamine ja käitamine on lihtne. See pakub alustamiseks mitmesuguseid võimalusi.
- See pakub haldustegevuste jaoks kasutusvalmis kasutajaliidest.
- See võimaldab mitmekeelseid veebisaite oma sisseehitatud rahvusvahelistumise süsteemi abil.
- See aitab teil kiiresti rahuldada suuri liiklusvajadusi.
- Django't kasutatakse igasuguste sisuhaldussüsteemide, sotsiaalvõrgustike ja teaduslike arvutusplatvormide loomiseks.
- Django aitab teil pakkuda rakenduste otsast lõpuni testimist.
- See aitab teil oma API-t HTML-väljundiga dokumenteerida.
- REST-raamistikul on rikkalik tugi mitmele autentimisprotokollile.
- See pakub õigusi ja piiramispoliitikaid.
- Seda kasutatakse laialdaselt ühe kasutaja API päringute kiiruse piiramiseks.
Django ajalugu
| Tootmisaasta | Teetähis |
|---|---|
| 2003 | Projekti algatasid Adrian Holovaty ja Simon Willison ajalehe Lawrence Journal-World siseprojektina. |
| juuli 2005 | See ilmus 2005. aasta juulis pealkirjaga „Django”, mis sai nime džässkitarristi Django Reinhardti järgi. |
| juuni 2008 | Kuulutati, et Django tarkvara Foundation (DSF) säilitaks Django. |
| 29 juuli 2009 | Django 1.1 ilmus selliste funktsioonidega nagu agregaadid ja tehingupõhised testid. |
| 17 mai 2010 | Django 1.2 ilmus. Värskendus pakkus funktsioone, nagu mitu andmebaasi ja e-posti taustsüsteem, ning täiustusi tehti seansside ja küpsiste osas. |
| Mar 23 2011 | Versioonis 1.3 tutvustati selliseid funktsioone nagu klassipõhised vaated ja staatilised failid. |
| Mar 23 2012 | Versioon 1.4 käivitati uute funktsioonidega, nagu ajavööndid ja brauserisisene testimine. |
| 26 veebruar 2013 | 1.5 versiooniga oli kaasas Python 3 tugi- ja konfigureeritavat kasutajamudeli funktsiooni. |
| 6 2013 november | Versioonil 1.6 olid andmebaasi tehingute haldamise ja ühenduste koondamise funktsioonid. |
| 2 september 2014 | Versioonil 1.7 olid uued funktsioonid, nagu rakenduste laadimine, migreerimine ja konfigureerimine. |
| 1 aprill 2015 | Mitme mallimootori jaoks pakuti natiivset tuge. |
| 1 dets. 2015 | Versioonis 1.9 võeti kasutusele automaatse parooli valideerimise funktsioon. |
| August 1 2016 | Versioonis 1.10 on täistekstiotsing PostgreSQL käivitati. |
| 4 aprill 2017 | Versioon 1.11 oli viimane versioon, mis toetas Python 2.7. |
| 2 dets. 2017 | Versioon 2.0 sai esimeseks Python Ainult 3-kordse väljalaskega versioon. |
| August 1 2018 | Versioonil 2.1 olid mudeli „vaata” loa tugifunktsioonid. |
| 2021 | Django 3.0 tugi eemaldati ja lisati Django 3.2 tugi. |
Nüüd selles Django algajatele mõeldud õpetuses tutvume Django funktsioonidega.
Django omadused
Allpool on Django funktsioonid:
- Aitab teil mustreid määratleda URLs teie taotluses.
- Lihtne, aga võimas URL süsteemi.
- Sisseehitatud autentimissüsteem.
- Objektorienteeritud programmeerimiskeele andmebaas, mis pakub parimat andmete salvestamist ja otsimist.
- Automaatse administreerimisliidese funktsioon võimaldab elemente lisada, muuta ja kustutada. Saate administreerimispaneeli vastavalt oma vajadustele kohandada.
- Vahemälu raamistikul on mitu vahemälu mehhanismi.
Selles Django raamistiku õpetuses tutvume Django omadustega.
Django omadused
Siin on Django peamised omadused:
- Lõdvalt ühendatud – Django aitab teil oma pinu iga elemendi teistest sõltumatuks muuta.
- Less kood – Tagab efektiivse arengu.
- Ei ole korduv – Kõik tuleks välja töötada täpselt ühes kohas, selle asemel, et seda uuesti korrata.
- Kiire areng – Django pakub kiiret ja usaldusväärset rakenduste arendust.
- Järjepidev disain – Djangol on puhas disain ja see teeb parimate veebiarendustavade järgimise lihtsaks.
Järgmisena selles Django algajatele mõeldud õpetuses õpime tundma Django arhitektuuri.
Django Architektuur: MVC ja MVT
Allpool on Django üksikasjalik arhitektuur:
Django Architektuur
MVC muster
Kasutajaliidest pakkuvatest rakendustest (veebi- või töölauarakendustest) rääkides räägime tavaliselt MVC arhitektuurist. MVC muster põhineb mudelil (Model), vaatel (View) ja kontrolleril (Controller).
. MUDEL määratleb andmestruktuuri ja hoolitseb andmebaasi päringute eest.
. vaade määrab, millised andmed tuleks esitada, ja tagastab HTTP-vastuse.
. kontroller on rakenduse osa, mis tegeleb kasutaja interaktsiooniga.
Django MVC-MVT muster
Model-View-Template (MVT) on MVC-st erinev kontseptsioon. Nende kahe arhitektuurimustri peamine erinevus seisneb selles, et Django ise haldab kontrolleri osa (tarkvarakoodi, mis kontrollib mudeli ja vaate vahelist interaktsiooni). Mall on HTML-fail, mis on segatud Django mallikeele failiga, mida nimetatakse ka DTL-iks.
Allolev diagramm näitab, kuidas kõik MVT-mustri komponendid omavahel suhtlevad, et teenindada konkreetset kasutaja päringut.
MVT laiendus Architektuur
Nagu ülaltoodud diagrammil näha, taotleb kasutaja Djangolt ressurssi. Django toimib kontrollerina ja kontrollib saadaolevat ressurssi. URL.
Kui URL Kaartide puhul nimetatakse vaadet, mis suhtleb mudeli ja malliga. Seejärel vastab Django kasutajale ja saadab vastuseks malli.
Selles Django õpetuste algajatele sarjas õpime nüüd tundma Django komponente.
Django komponendid
vorm
Djangol on võimas vormiteek, mis käsitleb vormide renderdamist HTML-ina. Teek aitab esitatud andmeid valideerida ja nendeks teisendada Python Tüübid.
Autentimine
See haldab kasutajakontosid, gruppe, küpsistel põhinevaid kasutajaseansse ja palju muud.
admin
See loeb teie mudelite metaandmeid, et pakkuda tugevat liidest, mida saab kasutada teie saidi sisu haldamiseks.
Rahvusvahelistumine
Django pakub tuge teksti tõlkimiseks erinevatesse keeltesse ning kuupäevade, kellaaegade, numbrite ja ajavööndite lokaalipõhiseks vormindamiseks.
TURVALISUS
Django pakub kaitset järgmiste rünnakute vastu:
- Saidiülene päringu võltsimine (CSRF)
- Saididevaheline skriptimine
- SQL süstimine
- Clickjacking
- Koodi kaugkäivitamine
Djangot kasutavad kuulsad ettevõtted
Siin on ettevõtted, mis kasutavad Django't:
- Bitbucket
- Disqus
- NASA
- PBS (avalik-õigusliku ringhäälingu teenus)
- Mozilla
- The Washington Post
- The New York Times
- Los Angeles Times
- Eestkostja
- National Geographic
- Discovery Channel
Django kasutamise puudused
Siin on mõned Django kasutamise puudused:
- Üks protsess ei saa korraga mitut päringut käsitleda.
- Django on väga monoliitne tööriist.
- Komponendid paigutatakse koos, mis võib tekitada segadust.
- Djangoga töötamiseks on vaja kogu süsteemi tundmist.
- See muudab veebirakenduse komponendid tihedalt seotuks.
- Väikeste ülesannete jaoks peate tegema pika programmeerimise.


