Django-opastus aloittelijoille: Ominaisuudet, Architecture & History
Django opetusohjelman yhteenveto
Tämä Django-opetusohjelma kattaa kaikki perusasiat alusta alkaen. Tässä opetusohjelmassa opit käsitteitä, kuten mikä on Django, Djangon historia, Djangon ominaisuudet, Django-kehyksen ominaisuudet, Djangon komponentit, edut ja haitat ja paljon muuta.
Ennen kuin opit Djangoa, ymmärrämme:
Mikä on Web Framework?
Verkkokehys on koodikirjasto, jonka avulla voit rakentaa joustavan, skaalautuvan ja ylläpidettävän; dynaaminen verkkosivusto, verkkosovellus ja verkkopalvelut. Eri web-kehykset ovat Zend for PHP, Ruby on Rails Rubylle jne.
Mikä on Django?
Django on web-kehityskehys Python joka tarjoaa vakiomenetelmiä nopeaan ja tehokkaaseen verkkosivustojen kehittämiseen. Tämän korkean tason verkkokehyksen ensisijainen tavoite on luoda monimutkaisia tietokantapohjaisia verkkosivustoja. Se auttaa sinua rakentamaan ja ylläpitämään laadukkaita verkkosovelluksia. Sen avulla voit tehdä kehitysprosessista sujuvaa ja aikaa säästävää nopeaa kehitystä varten.
Miksi Django? Djangon tärkeimmät edut
Tässä ovat Djangon tärkeimmät edut:
- Django on helppo asentaa ja käyttää. Se tarjoaa useita vaihtoehtoja aloittaaksesi
- Se tarjoaa käyttövalmiin käyttöliittymän hallinnollisiin toimiin
- Se mahdollistaa monikieliset verkkosivustot käyttämällä sisäänrakennettua kansainvälistymisjärjestelmää
- Auttaa sinua vastaamaan suuriin liikennevaatimuksiin nopeasti
- Djangoa käytetään kaikenlaisten sisällönhallintajärjestelmien, sosiaalisten verkostojen sekä tieteellisten laskenta-alustojen rakentamiseen.
- Django auttaa sinua tarjoamaan sovellustestauksen päästä päähän
- Auttaa dokumentoimaan API:si HTML-ulostulolla
- REST Framework tukee useita todennusprotokollia
- Luvat ja rajoituskäytännöt
- Sitä käytetään laajalti nopeuden rajoittamiseen yhdeltä käyttäjältä tuleviin API-pyyntöihin.
Djangon historia
Vuosi | Virstanpylväs |
---|---|
2003 | Adian Holovaty ja Simon Willison aloittivat projektin Lawrence Journal-World -sanomalehden sisäisenä projektina. |
heinäkuu 2005 | Se julkaistiin heinäkuussa 2005 nimellä "Django", joka on nimetty jazzkitaristi Django Reinhardin mukaan. |
kesäkuu 2008 | Ilmoitti, että Django-ohjelmisto Foundation (DSF) ylläpitäisi Djangoa. |
29 heinäkuu 2009 | Django 1.1 -versio julkaistiin ominaisuuksilla, kuten Aggregates, tapahtumapohjaiset testit. |
17 toukokuuta 2010 | Django 1.2 -versio julkaistiin. Päivitys tarjosi ominaisuuksia, kuten useita tietokantoja, sähköpostin taustajärjestelmän käyttöönottoa ja parannuksia istuntoihin ja evästeisiin on tehty tähän versioon. |
23 2011 ti | 1.3-versio, jossa on ominaisuuksia, kuten luokkapohjaiset näkymät, staattiset tiedostot esiteltiin |
23 2012 ti | 1.4-versio julkaistiin uusilla ominaisuuksilla, kuten aikavyöhykkeillä ja selaimen sisäisellä testauksella |
26 Helmikuu 2013 | Mukana tulee 1.5 versio Python 3 Tuki, konfiguroitavissa olevat käyttäjämallin ominaisuudet. |
6 marraskuu 2013 | 1.6-version mukana tulee DB-tapahtumien hallinta, yhteyden yhdistämisominaisuudet. |
2 syyskuu 2014 | 1.7-versiossa oli uusia ominaisuuksia, kuten sovellusten lataus, siirrot ja konfigurointi |
1 Huhtikuu 2015 | natiivi tuki useille mallikoneille. |
1 joulukuu 2015 | 1.9-versiossa otettiin käyttöön automaattinen salasanan vahvistusominaisuus. |
Elokuu 1 2016 | 1.10-versiossa täystekstihaku PostgreSQL käynnistettiin. |
4 Huhtikuu 2017 | 1.11-versiosta tulee viimeinen tuettu versio Python 2.7 |
2 joulukuu 2017 | versiosta 2.0 tulee ensimmäinen python 3 -julkaisuversio. |
Elokuu 1 2018 | versio 2.1 sisältää mallin "näkymä"-lupatukiominaisuuden. |
2021 | Django 3.0 -tuki poistettu ja Django 3.2 -tuki lisätty |
Nyt tässä Django aloittelijoille -opetusohjelmassa opitaan Djangon ominaisuuksista.
Djangon ominaisuudet
Alla on Djangon ominaisuudet:
- Auttaa sinua määrittämään malleja sovelluksesi URL-osoitteille
- Yksinkertainen mutta tehokas URL-järjestelmä
- Sisäänrakennettu todennusjärjestelmä
- Olio-ohjelmointikielitietokanta, joka tarjoaa luokkansa parhaan tiedon tallennuksen ja haun
- Automaattinen järjestelmänvalvojan käyttöliittymä mahdollistaa kohteiden lisäämisen, muokkaamisen ja poistamisen. Voit muokata hallintapaneelia tarpeidesi mukaan.
- Välimuistikehyksessä on useita välimuistimekanismeja.
Nyt tässä Django-kehysopetusohjelmassa opimme Djangon ominaisuuksista.
Djangon ominaisuudet
Tässä ovat Djangon tärkeimmät ominaisuudet:
- Loosely Coupled- Django auttaa sinua tekemään pinon jokaisesta elementistä riippumattoman muista.
- Less koodi- varmistaa tehokkaan kehityksen
- Ei toisteta – Kaikki tulee kehittää täsmälleen yhdessä paikassa sen sijaan, että toistetaan sitä uudelleen
- Nopea kehitys – Django's tarjoaa nopean ja luotettavan sovelluskehityksen.
- Johdonmukainen suunnittelu – Django ylläpitää puhdasta suunnittelua ja helpottaa parhaiden verkkokehityskäytäntöjen noudattamista.
Seuraavaksi tässä Djangon aloittelija-opetusohjelmassa opimme Djangon arkkitehtuurista.
Django ArchiTekniikka: MVC ja MVT
Alla on yksityiskohtainen Djangon arkkitehtuuri:
MVC malli
Kun puhutaan sovelluksista, jotka tarjoavat käyttöliittymän (web tai työpöytä), puhumme yleensä MVC-arkkitehtuurista. MVC-kuvio perustuu malliin, näkymään ja ohjaimeen.
- Malli määrittelee tietorakenteen ja huolehtii tietokannan kyselyistä.
- Näytä määrittää, mitä tietoja tulee esittää ja palauttaa HTTP-vastauksen.
- ohjain on se sovelluksen osa, joka käsittelee käyttäjän vuorovaikutusta.
Django MVC-MVT -kuvio
Model-View-Template (MVT) on erilainen konsepti kuin MVC. Suurin ero näiden kahden arkkitehtuurimallin välillä on, että Django itse hallitsee Controller-osaa (ohjelmistokoodi, joka ohjaa mallin ja näkymän välistä vuorovaikutusta). Malli on HTML-tiedosto, joka on sekoitettu Django Template Language -tiedoston kanssa, jota kutsutaan myös nimellä DTL.
Alla oleva kaavio näyttää, kuinka kaikki MVT-kuvion komponentit ovat vuorovaikutuksessa toistensa kanssa palvellakseen käyttäjän pyyntöä.
Kuten yllä olevasta kaaviosta näkyy, käyttäjä pyytää resurssia Djangolle. Django toimii ohjaimena ja tarkistaa käytettävissä olevat resurssit URL-osoitteessa.
Jos URL-osoite kartoitetaan, kutsutaan näkymää, joka on vuorovaikutuksessa mallin ja mallin kanssa. Django vastaa sitten käyttäjälle ja lähettää vastauksena mallin.
Nyt tässä Django-opetusohjelmassa aloittelijoille opimme Djangon komponenteista.
Djangon komponentit
muoto
Djangossa on tehokas lomakekirjasto, joka käsittelee lomakkeiden hahmontamista HTML-muodossa. Kirjasto auttaa validoimaan lähetetyt tiedot ja muuntamaan ne Python tyypit.
Authentication
Se käsittelee käyttäjätilejä, ryhmiä, evästepohjaisia käyttäjäistuntoja jne.
admin
Se lukee malleissasi olevat metatiedot tarjotakseen vankan käyttöliittymän, jota voidaan käyttää sivustosi sisällön hallintaan.
kansainvälistyminen
Django tukee tekstin kääntämistä eri kielille, päivämäärien, kellonaikojen, numeroiden ja aikavyöhykkeiden kielikohtaista muotoilua.
Turvallisuus
Django tarjoaa suojan seuraavia hyökkäyksiä vastaan:
- Sivustojen välinen väärentämispyyntö (CSRF)
- Cross-site scripting
- SQL-injektio
- clickjacking
- Etäkoodin suorittaminen
Djangoa käyttävät kuuluisat yritykset
Tässä ovat yritykset, jotka käyttävät Djangoa:
- BitBucket
- DISQUS
- NASA
- PBS (julkinen yleisradiopalvelu)
- mozilla
- Washington Post
- NY Times
- LA Times
- The Guardian National Geographic
- Discovery Channel
Djangon käytön haitat
- Prosessi ei voi käsitellä useita pyyntöjä samanaikaisesti.
- Django on hyvin monoliittinen työkalu.
- Komponentit otetaan käyttöön yhdessä, mikä voi aiheuttaa sekaannusta.
- Djangon työskentelyyn tarvitaan koko järjestelmän tuntemus
- Tekee verkkosovelluskomponenteista tiiviisti kytkettyjä
- Pieniä tehtäviä varten sinun on tehtävä pitkä ohjelmointi.
Yhteenveto
- Django on web-kehityskehys Python joka tarjoaa vakiomenetelmän nopeaan ja tehokkaaseen verkkosivustojen kehittämiseen.
- Djangon aloittivat Adian Holovaty ja Simon Willison sisäisenä projektina Lawrence Journal-World -sanomalehden vuonna 2003
- Django auttaa sinua dokumentoimaan API:si HTML-ulostulolla.
- Django antaa sinun muokata hallintapaneelia tarpeidesi mukaan.
- Django auttaa sinua tekemään pinon jokaisesta elementistä riippumattoman muista.
- Suurin ero MVC- ja MVT-arkkitehtuurimallien välillä on, että Django itse hallitsee Controller-osaa.
- Djangon arkkitehtuurin olennaiset osat ovat: muoto, todennus, järjestelmänvalvoja, kansainvälistyminen, turvallisuus.
- Bitbucket, DISQUS, Nasa, Pinterest, Instagram, Mozilla jne. käyttävät Djangoa
- Djangon suurin haittapuoli on, että se ei pysty käsittelemään useita pyyntöjä samanaikaisesti.