Programmazione.it v6.2
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Chat Forum
The Definitive Guide to django - Web Development Done Right
Recensito da Francesco Corsentino il 21-05-2010 ore 12:26
Copertina ISBN: 9781430219361
Autori: A. Holovaty, J. Kaplan-Moss
Editore: Apress
Lingua: Inglese
Anno: 2009
Pagine: 536
Allegati: Nessuno
Intel Software
Lo sviluppo di software è un'arte e come tale viene insegnata nei corsi universitari; poi però l'ambiente di produzione reale è leggermente diverso. Benché le nozioni rimangano inalterate, nella sostanza dei fatti a uno sviluppatore viene richiesto anche altro, pur avendo come obiettivo primario costruire un prodotto efficace e potente. Ciò vale pure per sviluppatori che lavorano in proprio. Quell'altro cui accennavo prima è la rapidità con la quale si riesce a completare la scrittura del codice. Nel mondo informatico di oggi, così frenetico e dove il tempo non presenta mai pause, la velocità di produzione è una caratteristica spesso determinante.

Sembrerebbe una introduzione avulsa dal testo che tratta di Django e fondamentalmente di Python, invece quanto detto ha molta attinenza con l'argomento del libro di Holovaty e Kaplan-Moss. Alla base della creazione di Django c'è infatti quanto espresso nelle primissime righe di questa recensione: arte, potenza e velocità. Le prime due caratteristiche sembrano discendere direttamente dal linguaggio di riferimento e cioè Python. Molto si è detto e molto si è scritto su questo favoloso strumento e recentemente abbiamo pure recensito uno dei migliori libri in circolazione.

Inutile dire che ai fini di una buona comprensione del materiale proposto nel libro la conoscenza, pur basilare, di Python è un requisito da cui il lettore non può sfuggire. In realtà gli autori amano, talvolta, sfidare a studiare Django e proporre il testo anche a quanti non hanno mai conosciuto Python. Una sfida che mi appare piuttosto ardua. Questo però mi serve per far notare immediatamente un'apprezzabile caratteristica dello stile di Holovaty e Kaplan-Moss: sempre chiaro, sempre preciso e, limitatamente al contesto di trattazione, sufficientemente esauriente. Le eventuali lacune che il lettore può presentare circa un particolare argomento vengono prontamente risolte attraverso note e precisazioni sugli esempi proposti.

Django è un framework specificamente disegnato per realizzare applicazioni web. La parola framework sta a indicare un insieme di librerie e codice, che forniscono supporto a uno sviluppatore al fine di rendere la costruzione di un applicativo un processo più semplice e più veloce. Un framework, quale Django nel nostro caso, permette di evitare la riscrittura di funzioni o parti del software attraverso una serie di classi e procedure ben scritte e subito pronte.

Django fornisce diversi potenti strumenti per gestire facilmente un contenuto: è stato infatti inizialmente progettato per supportare la costruzione di un sito di notizie (lawrence.com); sgue il pattern Model-View-Controller, una soluzione architetturale che nella programmazione è una metodologia piuttosto diffusa. Per poter iniziare a usare Django occorre completare una fase di installazione e prima configurazione che il libro illustra ottimamente nei capitoli 1 e 2.

Permette di astrarre completamente dal database che poi verrà usato e, per un utilizzo basilare, non c'è nemmeno bisogno di manipolare del codice SQL. In linea teorica, come scritto nel capitolo 5, non occorre nemmeno conoscere approfonditamente i rudimenti di database relazionale e del linguaggio SQL, a fronte di una buona comprensione del modo in cui Django permette di gestire tutte le operazione sul database medesimo. Le API che fornisce il framework, descritte nell'appendice B, sono in questo senso davvero potenti e ben scritte. Servono solo un po' di tempo per lo studio e applicazione.

Il lavoro che lo sviluppatore dovrà compierere con Django è una preliminare pianificazione di quello che sarà il sito. Poiché stiamo trattando siti web dovremo fare i conti, non già solamente con interfacce grafiche, ma anche e soprattutto con una rigorosa mappatura di pagine (dove andremo a includere le interfacce e tutte le funzioni) e URL. Tradotto nel gergo Django faremo i conti cioè con views e URLconfs, il tutto descritto nel capitolo 3. Le prime non sono altro che tutta la logica necessaria per gestire le richieste e i secondi si occupano della mappature delle view function con gli URL e fanno pesante uso di espressioni regolari. A questo dobbiamo aggiungere tutta la conoscenza per progettare buoni template —nel capitolo 4 — ovvero le viste basate su tag ed ereditarietà. Il lettore troverà nei capitoli tutti i dettagli necessari a una buona comprensione prima teorica e poi soprattutto pratica di tali argomenti, con tanto codice da studiare.

Questi stessi argomenti vengono ripresi ed enucleati con dovizia di dettagli nella seconda parte del libro. Quest'ultima contiene proprio i capitoli che puntano a dare al lettore la maggiore approfondimento così da prendere piena coscienza di tutte le potenzialità di Django.

I creatori di Django hanno pensato di permettere agli sviluppatori di poter operare dietro le quinte del software finale in modo semplice e diretto. Attraverso quello che viene chiamato Django Admin Site si ha accesso a una potente soluzione integrata di amministrazione dei contenuti dell'applicazione tutta. Per contenuti, è bene precisare, si intendono tutti i modelli e i dati trattati dal framework e dall'applicazione. L'area di amministrazione tiene traccia di tutte le operazioni effettuate e permette inoltre una elementare quanto efficace gestione dell'utenza e dei permessi relativi a ciascun utente, argomenti del capitolo 6 e dell'appendice F. Il compito di dettagliare per intero le varie questioni relative a utenti, sessioni e sicurezza sono demandate al capitolo 14.

In definitiva il libro di Holovaty e Kaplan-Moss è certamente la prima fonte di informazioni per chi intende approcciarsi a Django. Lo stile è di quelli che permettono al lettore di iniziare subito a sperimentare, senza noiose e interminabili letture, alla fine delle quali spesso ci si dimentica di nozioni e dettagli. Manca all'interno del testo un progetto completo, ma a conti fatti non mi sembra un punto a sfavore. D'altra parte il libro risulta particolarmente prezioso anche quando bisogna velocemente rivedere qualche dettaglio di implementazione. Il testo si riferisce alla versione 1.1 del framework.
proLa lettura consente una veloce comprensione degli aspetti del framework. Buona la strutturazione del testo e la ricchezza delle appendici. Il libro offre tanto codice ed esiste anche una versione online del libro completamente accessibile.
controManca un progetto completo, ma come accennato nella recensione, avrebbe forse appesantito la trattazione; lo si sarebbe però potuto proporlo in un supporto digitale a parte.
Precedente: Multitasking stile Android (2/3)
Successiva: Retrocomputing e archeologia informatica: le memorie a bolle (1/2)
Copyright Programmazione.it™ 1999-2009. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.769 secondi. Sito ottimizzato per Mozilla Firefox. Powered by Kyron.