Son muchos los lenguajes de programación que existen. Para el desarrollo de aplicaciones web se suelen utilizar frameworks que adaptan las características de un determinado lenguaje a las peculiaridades del desarrollo web. En el caso de Python existen varios frameworks que cumplen con esta tarea, en esta ocasión os voy a presentar Django.
El rasgo mas característico de este framework es la diferenciación que hace con respecto al típico paradigma de Modelo-Vista-Controlador. Los creadores de Django ha variado este paradigma levemente para llamarlo Model-Template-View. En el artículo de Wikipedia se explica básicamente lo que esto signifíca:
Aunque Django está fuertemente inspirado en la filosofía de desarrollo Modelo Vista Controlador, sus desarrolladores declaran públicamente que no se sienten especialmente atados a observar estrictamente ningún paradigma particular, y en cambio prefieren hacer «lo que les parece correcto». Como resultado, por ejemplo, lo que se llamaría «controlador» en un «verdadero» framework MVC se llama en Django «vista», y lo que se llamaría «vista» se llama «plantilla».
Otra característica de este framework es que a través del manejo de los templates podemos modificar el aspecto de la aplicación con tan solo una línea de código al modificar el fichero html, al cual se llama desde cualquier página de la aplicación mediante objetos request de Python. La potencia de esto es evidente. Mientras que en PHP si el desarrollo no ha sido a conciencia a este respecto, nos encontramos ante una tarea leonina si deseamos modificar el aspecto general de la aplicación, en Django-Python, esto viene definido por defecto, es decir, es nativo. No puedes definir ninguna página sin referenciar un template. Dando consistencia visual a la aplicación desde el principio.
Otra faceta a tener en cuenta es que también dispone de un entorno de administración pre-configurado. Es decir, des-comentando algunas lineas de sus ficheros básicos, vamos obteniendo un entorno de administración sin ni siquiera tener que diseñarlo. Las ventajas de esto también son evidentes en cuanto al ahorro de tiempo.
Por último y por el momento mencionar que quienes desarrollaron Django tenían una filosofía muy clara llamada DRY, del inglés Don’t Repeat Yourself. Es decir, No Te Repitas. Como cualquier informático odian las tareas repetitivas y en base a esta filosofía se ha configurado toda la arquitectura de Django.
En próximas entregas ahondaremos en este fantástico framework para Python con tutoriales y ejemplos de nuestros proyectos.
Mientras llegan esas nuevas entradas podemos compartir conocimientos y experiencias ¿Conocíais Django? ¿Lo habéis utilizado en algún proyecto? ¿Qué resaltaríais de este framework?