Introduzione a Django
Django è un framework web open source scritto in Python, progettato per rendere lo sviluppo di applicazioni web veloce, sicuro e scalabile. Dalla sua nascita nel 2005, Django è diventato uno dei framework piÚ utilizzati al mondo, adottato da aziende come Instagram, Pinterest, Mozilla e Spotify.
Cosâè Django
Django è un framework web ad alto livello che segue il pattern architetturale MVT (Model-View-Template). Il suo obiettivo principale è permettere agli sviluppatori di concentrarsi sulla logica dellâapplicazione, senza dover reinventare la ruota per le funzionalitĂ comuni come autenticazione, gestione del database e routing delle URL.
# Un esempio minimale di view Django
from django.http import HttpResponse
def benvenuto(request):
return HttpResponse("Benvenuto in Django!")
Il Pattern MVT
Django utilizza una variante del classico pattern MVC chiamata MVT:
- Model: Definisce la struttura dei dati e gestisce lâinterazione con il database tramite lâORM integrato.
- View: Contiene la logica di business, riceve le richieste HTTP e restituisce le risposte.
- Template: Gestisce la presentazione, ovvero il codice HTML con la sintassi di template Django.
# Model
from django.db import models
class Articolo(models.Model):
titolo = models.CharField(max_length=200)
contenuto = models.TextField()
pubblicato = models.DateTimeField(auto_now_add=True)
Filosofia di Django
Django si basa su alcuni principi fondamentali:
-
Batteries Included: Django include tutto il necessario per costruire unâapplicazione web completa: ORM, sistema di autenticazione, pannello di amministrazione, gestione dei form, protezione CSRF e molto altro.
-
DRY (Donât Repeat Yourself): Ogni concetto deve essere definito una sola volta. Django incoraggia il riuso del codice e la modularitĂ .
-
Convenzione su Configurazione: Django fornisce impostazioni predefinite sensate, riducendo la quantitĂ di configurazione necessaria.
-
Sicurezza: Il framework include protezioni integrate contro SQL injection, XSS, CSRF e clickjacking.
Breve Storia
Django è nato nel 2003 presso il giornale Lawrence Journal-World, in Kansas, dove i programmatori Adrian Holovaty e Simon Willison lo svilupparono per gestire siti web di notizie. Nel 2005 è stato rilasciato come progetto open source con licenza BSD. Da allora, la comunità è cresciuta enormemente e il framework viene aggiornato costantemente.
PerchĂŠ Scegliere Django
- Sviluppo rapido: Django riduce drasticamente i tempi di sviluppo grazie ai suoi componenti integrati.
- Pannello di amministrazione automatico: Con poche righe di codice si ottiene unâinterfaccia di gestione dei dati completa.
- ORM potente: Interagisci con il database usando Python, senza scrivere SQL manualmente.
- Scalabilità : Django gestisce traffico elevato ed è utilizzato da piattaforme con milioni di utenti.
- Community attiva: Documentazione eccellente e migliaia di pacchetti di terze parti disponibili su PyPI.
Django vs Altri Framework
| Caratteristica | Django | Flask | FastAPI |
|---|---|---|---|
| Tipo | Full-stack | Micro-framework | API framework |
| ORM integrato | Si | No | No |
| Admin panel | Si | No | No |
| Curva di apprendimento | Media | Bassa | Bassa |
| Ideale per | Applicazioni complete | Progetti piccoli | API REST |
Requisiti per Iniziare
Per lavorare con Django 5.x è necessario:
- Python 3.10 o superiore
- pip (gestore pacchetti Python)
- Un editor di codice (VS Code, PyCharm)
- Conoscenze base di Python, HTML e SQL
# Verifica la versione di Python
python --version
Conclusione
Django è la scelta ideale per chi vuole costruire applicazioni web robuste e sicure con Python. Grazie alla sua filosofia âbatteries includedâ, permette di passare dallâidea al prodotto in tempi ridotti. Nei prossimi capitoli vedremo come installare Django e creare il nostro primo progetto.