Django

Hamilton Alvarez
Luis Fernando Restrepo
Juan Carlos Galvis
¿Qué es Django?
Django es un entorno de desarrollo web escrito en Python que fomenta el desarrollo rápido y el diseño limpio y pragmático (más rápido y con menos código). Creado por Adrian Holovaty y Simon Willison.
Django fue inicialmente desarrollado para gestionar aplicaciones web de páginas orientadas a noticias de World Online, más tarde se liberó bajo licencia BSD. 

Title
Propósito General
-
La meta fundamental de Django es facilitar la creación de sitios web complejos.
- Django pone énfasis en el re-uso, la conectividad y extensibilidad de componentes, el desarrollo rápido y el principio No te repitas.

características
-
Un mapeador objeto-relacional (ORM).
-
Aplicaciones "enchufables" que pueden instalarse en cualquier página gestionada con Django.
- Una API de base de datos robusta.
-
Un sistema extensible de plantillas .
-
Un despachador de URLs basado en expresiones regulares.
-
Un sistema "middleware".
-
Soporte de internacionalización, incluyendo traducciones incorporadas de la interfaz de administración.
- Un sistema incorporado de "vistas genéricas" que ahorra tener que escribir la lógica de ciertas tareas comunes.
FILOSOFÍA
El zen de Python:
- Hermoso es mejor que feo.
- Explícito es mejor que implícito.
- Simple es mejor que complejo.
- Complejo es mejor que complicado.
- Sencillo es mejor que anidado.
- Escaso es mejor que denso.
- La legibilidad cuenta.

¿Por qué debemos elegir Django?
Al ser un framework de desarrollo web rápido y amigable hecho en Python. Se nota o hay mucha diferencia entre otros lenguajes de programación o frameworks de desarrollo web. Pongamos un ejemplo Python vs Java.


Sitios web que utilizan o utilizaron el framework Django
- Yahoo
- Discovery Comunication
- National Geographic
- Walt Disney
- The New York Times
- Mozilla Fundation
- Mas sitios: https://www.djangosites.org/
¿Por que realmente es tan fácil usar Django?
En Comparación entre Django y otros frameworks con sus ficheros y carpetas:
-
Ruby on Rail: 149 ficheros y 35 carpetas
-
Php Symfony: 117 ficheros y 29 carpetas
-
Python Django: 4 ficheros y 1 carpeta
Al igual que otros frameworks de desarrollo web, Django también trabaja con el patrón MVC (Modelo Vista Controlador) o específicamente con el MVT (Modelo Vista Template).
Arquitectura

Arquitectura

Django
Ventajas
- Genera automáticamente un panel de administración de la BD.
- Soporta ORM.
- Patrón MVC.
- Facilita la integración con el frontend mediante el lenguaje de templates.
- Vistas genéricas , que ahorran procesos comunes en aplicaciones.
- Es modular.
- Bajo acoplamiento
- Rápido desarrollo.
- Gran cantidad de paquetes. 2.321 !
- Comunidad activa.
Desventajas
- Dificultad para comprender MVT.
- La curva de aprendizaje suele ser un poco mas alta que otros frameworks de Django.
- Se dificulta mucho el trabajo para aplicaciones real-time.
GRACIAS!!

Django
By mejialvarez
Django
- 734