Django es un framework de desenvolupament web escrit amb Python que compleix amb el paradigma Model-Vista-Controlador. Els principis de Django són:
- Desenvolupament ràpid d’aplicacions.
- Aprofitament del codi i evitar la duplicitat del mateix.
- Garantir la connectivitat i la extensibilitat dels seus components.
Django permet desenvolupar aplicacions segons el model de programació Orientada a Objectes, i ofereix un sistema de mapeig relacional que s’encarrega de guardar els objectes en una base de dades. Aquest sistema permet al desenvolupador oblidar que està treballant amb una base de dades i centrar-se en el desenvolupament de l’aplicació. Django pot treballar amb diferents bases de dades. Oficialment soporta PostgreSQL, MySQL, SQLite i Oracle. De totes formes existeixen extensions suportades per la comunitat d’usuaris que permeten treballar amb altres bases de dades, com poden ser: Microsoft SQL Server, Cassandra, Redis, MongoDB, i altres.
Django també s’encarrega de crear automàticament i de forma dinàmica una interfície web per a que puguis crear/modificar/eliminar els teus objectes de la base de dades d’una forma molt amigable per l’usuari final. Gracies al principi de garantir la extensiblitat aquesta interfície d’administració pot ser totalment personalitzada per al desenvolupador final.
Per garantir l’aprofitament del codi Django permet la integració amb eines desenvolupades per altres. Actualment podem trobar més de 1000 aplicacions/eines que podem utilitzar als nostres desenvolupaments. Així django disposa d’una pàgina on poder publicar els teus desenvolupaments i veure els que han estat realitzats per altres persones. Tot això ho podreu trobar a djangopackages.com
Al centrar-se en el patró model-vista-controlador, django facilita el creixement de la teva pàgina web permetent, en cas de necessitat, separar els diferents components de la estructura en diferents servidors: un servidor encarregat de servir el contingut estàtic, un servidor encarregat de generar i servir el contingut dinàmic i un servidor encarregat d’allotjar la base de dades. Això permet que el nostre servidor web pugui soportar moltes més peticions per segon sense requerir la forta inversió de hardware per comprar una super-maquina.
Per a que pogueu veure com el seu sistema de plantilles ( vistes del patró MVC) permet la total personalització de l’aspecte i la disposició de de cada pàgina web, us deixo una petita llista de llocs que utilitzen django:
Podeu trobar una llista complerta a la pàgina de llocs web de django.