Está en la página 1de 3

Instituto Nacional de Estadística e Informática Escuela Nacional de Estadística e Informática

campusvirtual@inei.gob.pe

Lenguaje de Programación Python

Django

Es un framework específicamente desarrollado para agilizar el desarrollo web y de esta manera hacer
más eficiente y rápido los ciclos de desarrollo, su origen se da gracias a los programadores Adrian
Holovaty y Simon Willison cuando decidieron abandonar PHP y utilizar Python (Un lenguaje de
programación interpretado al igual que PHP) para la programación de sitios web de alta envergadura
como lo es Lawrence.com alrededor del año 2003.

Está basado en una arquitectura derivada del MVC (Modelo-Vista-Controlador) llamada MPV (Modelo-
Plantilla-Vista, MTV por sus siglas en inglés), hay algunas diferencias más que todo teóricas, que
prácticas, aunque es bueno tenerlas en mente para evitar confusiones.

Así, con Django podremos crear desde webs personales, sistemas de gestión de contenido (CMS, por
sus siglas en inglés) a la par o mejores que sistemas como Wordpress e incluso plataformas de
eCommerce y ERP. La mayor ventaja de este framework radica en la facilidad de aprendizaje y
rapidez de desarrollo que ofrece, esto en parte gracias a estar codificado en Python, teniendo una
filosofía basada en la DRY.

Características:

• Python: “Django es un framework web de alto nivel escrito en Python”. Gracias a esto Django
hereda todas las características y facilidades que nos da Python, entre ellas escribir código bastante
fácil de entender, y sobre todo te permite desarrollar aplicaciones muy rápidas y potentes.

• Rapidez: Django nació en un ambiente periodístico, donde se subían noticias muy rápido, y como los
desarrolladores no pudieron estar a ese ritmo decidieron crear algo que sí lo haga, y así fue como
nace Django, es por eso que ha sido estructurado de tal manera que tus aplicaciones web se crean
muy rápidas

• DRY: ¡No te repitas!, Django utiliza esta filosofía para no crear bloques de código iguales y fomentar
la reutilización del mismo.

• Admin: Django es el único framework que “por defecto” viene con un sistema de administración
activo, ¡listo para ser utilizado sin ningún tipo de configuración.

Numero de Pagina: 1 Total de Paginas:3


Instituto Nacional de Estadística e Informática Escuela Nacional de Estadística e Informática

campusvirtual@inei.gob.pe

• ORM: Para resumir esto, tómalo como una herramienta que te permite realizar consultas SQL a la
Base de Datos, SIN UTILIZAR SQL.

Ejemplos:

Sin ORM:

SELECT * FROM Alumno


WHERE edad = 17

Con ORM:

Alumno.objects.filter(edad = 17)

Sin ORM:

SELECT * FROM “autores_autor”


INNER JOIN “autor_libro”
ON (“autores_autor”.”id” = “autores_libro”.”autor_id”)

INNER JOIN “autores_libro_librerias”


ON (“autores_libro”.”id” = “autores_libro_librerias”.” libro_id”)

INNER JOIN “autores_libreria”


ON (“autores_libro_librerias”.”libreria_id” = “autores_libreria”.”id”)
WHERE “autores_libreria”.” nombre” = “La Cultura”

Con ORM:

Autor.objects.filter(libros__libreria__nombre = “La Cultura”)

Si todo esto no te parece suficiente, Django es el único framework web que crea menos archivos al
momento de iniciar un proyecto, increíblemente tu puedes iniciar un proyecto con tan sólo 5 archivos,
mientras que los otros framework te crean una estructura inmensa al crear un nuevo proyecto,
“Desarrollo rápido, limpio y pragmático”.

Patrones de desarrollo

Estas tres piezas juntas: la lógica de acceso a la base de datos, la lógica de negocios, y la lógica de
presentación, comprenden un concepto que a veces es llamado el patrón de arquitectura de software
Modelo-Vista-Controlador (MVC).

En este patrón:

• El "Modelo" hace referencia al acceso a la capa de datos,


• La "Vista" se refiere a la parte del sistema que selecciona qué mostrar y cómo mostrarlo.
• El "Controlador" implica la parte del sistema que decide qué vista usar, dependiendo de la
entrada del usuario, accediendo al modelo si es necesario.

Numero de Pagina: 2 Total de Paginas:3


Instituto Nacional de Estadística e Informática Escuela Nacional de Estadística e Informática

campusvirtual@inei.gob.pe

Objetivo

El objetivo es principalmente simplificar la comunicación entre los desarrolladores.

Django sigue el patrón MVC tan al pie de la letra que puede ser llamado un framework MVC.

• M, la porción de acceso a la base de datos, es manejada por la capa de la base de datos de


Django, la cual describiremos en este capítulo.

• V, la porción que selecciona qué datos mostrar y cómo mostrarlos, es manejada por la vista y
las plantillas.

• C, la porción que delega a la vista dependiendo de la entrada del usuario, es manejada por el
framework mismo siguiendo tu URLconf y llamando a la función apropiada de Python para la
URL obtenida.

Debido a que la "C" es manejada por el mismo framework y la parte más importante se produce en
los modelos, las plantillas y las vistas, Django es conocido como un Framework MTV.

En el patrón de diseño MTV:

• M significa "Model" (Modelo), la capa de acceso a la base de datos. Esta capa contiene toda la
información sobre los datos: cómo acceder a estos, cómo validarlos, cuál es el
comportamiento que tiene, y las relaciones entre los datos.

• T significa "Template" (Plantilla), la capa de presentación. Esta capa contiene las decisiones
relacionadas a la presentación: como algunas cosas son mostradas sobre una página web o
otro tipo de documento.

• V significa "View" (Vista), la capa de la lógica de negocios. Esta capa contiene la lógica que
accede al modelo y la delega a la plantilla apropiada: puedes pensar en esto como un puente
entre el modelo y las plantillas.

Video Tutorial

✓ Django – Diferencias entre MVC y MTV https://www.youtube.com/watch?v=XkibFDsh6sw

Numero de Pagina: 3 Total de Paginas:3

También podría gustarte