Django

3,159 views
2,938 views

Published on

Breve descripción e historia del framework de programación web Django escrito en Python.

Published in: Self Improvement
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,159
On SlideShare
0
From Embeds
0
Number of Embeds
348
Actions
Shares
0
Downloads
59
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Django

  1. 1. Álvaro Hurtado Mochón [email_address] @ahm84
  2. 2. Indice : - ¿Qué es? - Sus orígenes - Competencia - Arquitectura - Componentes Principales - Otras - Webs en Django - Bibliografía
  3. 3. ¿Qué es? *Modelo Vista Controlador: patrón de arquitectura de software que separa datos(modelo), interfaz(vista) y transformaciones del modelo(controlador). Django es un framework de desarrollo web de código abierto, escrito en Python , que cumple en cierta medida el patrón Modelo Vista Controlador*.
  4. 4. ¿Qué es? La comunidad Django lo define como “el framework para perfeccionistas con plazo de entrega”. Y añaden: “Django te hace más facil construir mejores aplicaciones web, más rápido y con menos código.”
  5. 5. Sus orígenes Fué originalmente desarrollado para administrar varias páginas de noticias para la compañía The World Company. Fué liberado por primera vez en 2005. Y la primera versión estable, 1.00, ha sido liberada en Septiembre de 2008. Filosofía DRY (Don't Repeat Yourself)
  6. 6. Competencia Por una parte los clásicos: PHP, ASP, JSP, PERL, ... Por otra los basados en MVC: Django y Ruby on Rails
  7. 7. Arquitectura La arquitectura de Django es una variación de MVC. Llamada Modelo Vista Template. Patrón MVC Modelo Controlador Vista vs datos operaciones interfaz Patrón MVT Modelo Vista Plantillas(Templates)
  8. 8. Arquitectura Proceso Completo de una petición al servidor.
  9. 9. Mapeador Objeto-Relacional Se ocupa de la base de datos URL Dispatcher Encauza las peticioines a las vistas Vistas Realiza cambios en BD y presenta los datos Plantillas Genera la Interfaz a partir de los datos Componentes Básicos
  10. 10. Componentes Básicos Mapeador Objeto-Relacional models.py URL Dispatcher urls.py Vistas views.py Plantillas archivos.html
  11. 11. ORM Permite acceder a datos almacenados en una base de datos relacional con una interfaz Orientada a Objetos. Tablas serán Clases. Tuplas serán Objetos.
  12. 12. ORM Definimos el modelo de datos: Creamos la base de datos: %> manage.py sqlall nombreapp %> manage.py syncdb
  13. 13. URL Dispatcher - Podemos definir explícitamente cuales son válidas - Usamos expresiones regulares - Es un sistema algo lioso al principio, pero muy flexible
  14. 14. URL Dispatcher urlpatterns = patterns(‘ ’ , (r’^/$’, ‘ project.miblog.views.index ’), (r’^ (?P<anno>d+) / (?P<mes>d+) /$’, ‘ project.miblog.views.archivo ’), )
  15. 15. Plantillas - Las plantillas son ficheros de texto plano - Se usan para generar ficheros de texto: HTML, xHTML, XML, CSV, JSON... - Dentro de una plantilla se definen partes de texto estático, variables y marcas - Permite herencia entre plantillas
  16. 16. Plantillas <html> <head><title> {{ lema_del_blog }} </title></head> <body> {% for a in articulos_portada %} <div class =“articulo”> <h1 class =“titulo_articulo”> {{ a.titulo|escape }} </h1 > <div class=“cuerpo_articulo”> {{ a.texto|escape }} </di v> </di v> {% endfor %} </body>
  17. 17. Otras - Middlewares - Aplicaciones “empotrables” / DRY - Cache - Formularios - Sesiones / Cookies - Usuarios … - Google
  18. 18. WEBs en Django - http://www.ljworld.com/ - http://www.torontolife.com/ - http://dpaste.com/ - h ttp://www.washingtonpost.com/
  19. 19. Bibliografía - http://docs.djangoproject.com/ - http://www.django.es/ - http://es.wikipedia.org/wiki/ Django_web_framework - h ttp://www.djangoproject.com/

×