Django

Mer, 29/09/2010 - 13:08

Django è un framework scritto in python per la realizzazione di applicazioni web, rilasciato sotto licenza BSD.

Nell'autunno del 2003 Adrian Holovaty e Simon Willison decisero di abbandonare PHP ed iniziarono ad utilizzare python per i loro progetti di sviluppo web. La necessità di costruire siti dinamici ed interattivi come Lawrence.com li portò ben presto a creare un framework generico, che li aiutasse a sviluppare applicazioni web velocemente. Nel 2005 quel framework venne rilasciato sotto licenza open source sotto il nome di Django, uno dei più famosi chitarristi jazz di tutti i tempi.

Django è anche conosciuto come

The web framework for perfectionists with deadlines.

poichè è stato creato con l'obiettivo di aderire il più possibile al principio DRY, e quindi fornisce tutti gli strumenti per scrivere codice pulito in modo pragmatico ed efficace.

Le caratteristiche Django sono le seguenti:

  • Framework MVT: Penso che tutti conoscano ormai i framework MVC (model, view, controller). Django è invece un framework MVT (model, view, template), ma non c'è nulla di cui allarmarsi, è semplicemente una convenzione linguistica. Il template di Django corrisponde alla view in un qualunque framework MVC, la view di Django si può invece dire che corrisponda al controller (anche se per essere precisi il controller nel caso di Django corrisponderebbe all'incirca a tutto il framework, ma per semplificare si può accettare anche questa definizione). Maggiori dettagli nella FAQ apposita.
  • Un buon ORM (object relational mapper): Django consente di definire i propri models direttamente in python, l'ORM si occupa di trasformarli in codice sql. Allo stesso modo non serve scrivere query direttamente in SQL, basta usare l'ORM per avere i risultati direttamente "fetched" come oggetti python. L'ORM di Django supporta PostgreSQL, mySQL, sqlite, Microsoft SQL Server ed Oracle. Infine, se non vi piace l'ORM di Django, potete sempre sostituirlo con il potentissimo SQLAlchemy, dentro a Django ovviamente (operazione praticamente plug and play).
  • Un'ottimo modo di gestire le forms: Django possiede una libreria per le forms davvero potente ed espressiva, che consente di realizzare logiche complesse in pochissime righe di codice, lasciando il massimo controllo allo sviluppatore su ogni aspetto.
  • Una infinità di apps: Django è un framework batteries included, ovvero contiene al suo interno alcune applicazioni per i più comuni task che dimezzano il tempo di sviluppo, ad esempio un sistema di autenticazione, una interfaccia amministrativa, un framework per generare le sitemaps XML e molto altro. Inoltre la community è piuttosto attiva e c'è davvero molto di pronto da customizzare e riutilizzare.
  • Eccellente documentazione: Django è senza ombra di dubbio tra i migliori framework per quanto riguarda la documentazione ufficiale. Oltre ad alcuni tutorial, utili per impararne le basi, troverete che ogni aspetto del framework è documentato in modo eccellente. Inoltre è disponibile un fantastico libro chiamato DjangoBook (disponibile anche in versione cartacea), che viene aggiornato ad ogni release, come del resto tutta la restante documentazione.

Se arrivati a questo punto vi state chiedendo se esistono mai dei siti web sviluppati in Django, non vi resta che guardare questo sito, in cui ne trovate una lista assolutamente non esaustiva. C'è da dire poi che Django è un framework piuttosto recente, che sta fiorendo solo ora in un mercato in cui i framework PHP (principalmente perchè il linguaggio PHP è storicamente più diffuso tra gli sviluppatori web) e Ruby on Rails sono pressochè dominanti.

Se infine volete capire se Django fa per voi, non vi resta che sporcarvi le mani, vi assicuro che sarete in grado di cogliere i primi risultati in tempi eccezionalmente brevi.

Mer, 02/06/2010 - 12:09

Da pochi giorni è online DjangoItalia, la prima community italiana dedicata a Django.

DjangoItalia nasce semplicemente con l'intenzione di aumentare la diffusione di Django sul territorio italiano, andando ad intercettare nuovi sviluppatori, che spesso preferiscono lavorare su qualcosa per il quale esiste supporto anche in lingua locale. Inoltre DjangoItalia ha lo scopo di promuovere Django portandolo ad essere un partner ideale di un numero sempre maggiore di aziende.
Per ulteriori informazioni visita DjangoItalia, oppure vai direttamente sul forum.

Condividi contenuti