DJANGO INTRODUZIONE

DjangoPrima di iniziare a parlare del Framework Django ti lascio un link alla documentazione ufficiale che ritornerà molto utile in seguito. https://docs.djangoproject.com/it/4.0/. Lo scopo principale di questa prima sezione dedicata è quello di fornire una buona visione d’insieme del Framework, e delle parti principali che lo compongono. Questo faciliterà la comprensione del ruolo svolto dalle singole componenti, che analizzeremo e impiegheremo nel dettaglio nelle sezioni successive.

CHE COS’E’ DJANGO

Django è un Web Framework di alto livello scritto in Python, che consente lo sviluppo di siti web sicuri e scalabili rapidamente. Tra i suoi utilizzatori celebri, Django vanta: Instagram, Disqus, Pinterest, National Geographic, BitBucket, PBS, Washington Times, Mozilla e tantissimi altri. Considerando la sua popolarità, e il fatto che si tratta di un Web Framework Open Source, possiamo contare su puntuali e continui aggiornamenti del software, una comunità di sviluppatori fantastica e tanto supporto. Il fatto che sia scritto utilizzando Python, inoltre, ne permette una facile integrazione col parco librerie del linguaggio.

ENTRIAMO NEL DETTAGLIO

  • Completezza

Seguendo la filosofia “batterie incluse”, il framework mette a disposizione degli sviluppatori tantissime componenti pronte all’uso, il che permette di concentrarsi sullo sviluppo software “senza dover reinventare la ruota”

  • Sicurezza

Django è stato concepito con un forte accento sulla sicurezza, e fornisce tanti accorgimenti utili ad evitare gran parte degli errori più comuni. Tra le tante, fornisce protezione automatica per vulnerabilità quali SQL injection, cross-site Scripting e cross-site request forgery. 

  • Versatilità

Django può essere ed è stato utilizzato per la creazione di qualsiasi tipologia di sito, CMS e WIKI, Social Network, siti di e-commerce, News e tanto altro. Può fornire contenuto in tantissimi formati, come HTML, JSON, RSS, ed essere esteso da componenti esterne, come Django Rest Framework. Inoltre, supporta nativamente database quali MySQL, PostgreSQL e SQLite!

  • Scalabilità

Per via dell’architettura utilizzata, è possibile far scalare un sito scritto in Django fino ad accogliere centinaia di milioni di utenti!

  • Manutenibilità

Django è stato scritto rispettando il principio di scrittura software D.R.Y.
ovvero “Don’t Repeat Yourself”. Questo, abbinato alla sua architettura modulare, ci consente di mantenere il nostro codice robusto e aggiornato

  • Portabilità

Django è scritto utilizzando Python e ne eredita quindi la natura portabile, permettendoci di utilizzarlo senza problemi in tutti i sistemi operativi più comunemente diffusi

ARCHITETTURA

Architecture Django
Architecture MTV
Architecture MTV
Architecture MTV

Torneremo più volte su ciascuna di queste componenti, entrando nel dettaglio del loro funzionamento, per ora, ciò che conta davvero è tenere a mente un’idea del funzionamento del pattern MTV.