Introducción a Django

February 20, 08 by Tomcask

Tomo grandes partes sino todo de http://comesfa.xin.cat/Llibre:DjangoBook/Introducci%C3%B3_a_Django sino sabeís Catalán os tendréis que fiar de mi…

Django es un framework (marco de trabajo) de alto nivel basado en Python, facilita el desarrollo de Aplicaciones web dinámicas, te abstrae de los problemas comunes del desarrollo web y acelera las tareas mas frecuentes en la programación.Proporciona un método de mapear las urls, básicamente ejecuta un código en especial para cada url, por ejemplo para la url /productos/coches/audiA4, te mostrara el contenido de la tabla productos de la familia coches lo que tenga de audiA4, esto permite tener “urls friendly” osea urls que permite a los usuarios que buscan, te encuentren de una manera mas rápida.

Te permite mostrar y validar formularios de manera muy simple, fácilmente puede manipular el código del formulario adaptándolo a las necesidades de tu aplicación y a una respuesta simple para el usuario.

Convierte los datos enviados por los usuarios (a través de formularios, por ejemplo) en estructuras de datos que pueden ser manipuladas fácilmente.

A través de plantillas ayuda a separar el contenido de la presentación, evitándote tener que manipular la lógica de negocio cuando tengas que realizar cambios de apariencia en tu website.

Se integra fácilmente con la capa de base de datos, y permite que tu trabajo sea mas productivo a un nivel de abstracción mas alta y olvidate de las extensiones .aspx, .php, .jsp

No te voy a explicar a programar en python, eso te deberás buscar la vida, hablaremos sobre django aunque necesariamente tendremos que programar en python y explicare lo que pueda.

Sobre Python te contare que:

Es un lenguaje interpretado, no es necesario compilarlo.

Python utiliza tipos dinámicos, esto quiere decir que no necesitas declarar el tipo de datos de tus variables, esto no me gusta excesivamente pero todavía no conozco a python en exceso para poder criticarlo, por lo tanto le daré una oportunidad.

Su sintaxis es concisa i expresiva, necesitaras menos código para realizar la misma tarea que en otros lenguajes como Java o C#.
Ofrece unas características potentes de introspección i meta-programación que hacen que sea posible inspeccionar i añadir código a los objetos en tiempo de ejecución.

Aparte de las ventajas de python, django te permite un desarrollo rápido.

Django mantiene de una manera estricta un diseño limpio en su código y te permite entender mas fácilmente tus aplicaciones.

Django promociona el acoplamiento débil, diferentes módulos de la aplicación deberían ser intercambiables y se comunicaran con otros módulos a través de APIs limpias y concisas.

Por ejemplo el sistema de plantillas no sabe nada sobre el sistema de acceso a la base de datos, el cual no sabe nada sobre la capa de petición/respuesta HTTP. Cada una de estas capas son diferentes y ligeramente acoplables con el resto.

Django utiliza la arquitectura MVC, es el patrón que dice que el código para definir y acceder a los datos (El modelo) esta separado de la lógica de negocio (el controlador) que esta separado de la interficie de usuario (la vista).

Django tiene un único lugar donde guardar la configuración, y la capa de acceso a la BD tiene un nivel alto de abstracción para poder cambiar el servidor de BBDD (de mysql a postgreSQL) de una manera rápida y sencilla.

La historia de django no te la explico buscala…

Algunos ejemplos de quien utiliza Django.

* http://www.ljworld.com/
* http://www.lawrence.com/
* http://www.6newslawrence.com/
* http://www.visitlawrence.com/
* http://www.lawrencechamber.com/
* http://www2.kusports.com/stats/
* http://washingtonpost.com
* http://chicagocrime.org
* http://tabblo.com
* http://texasgigs.com
* http://grono.net
* http://traincheck.com

Puedes encontrar mas en djago-sites.




Add your comment

One response for this post

  1. Matiskay Says:

    Me gusta, python y ahora pienso seguir tu tutorial, por lo que he podido ver hay ejemplos)( justo lo que necesito!), bueno estare rondando por este blog.
    Muchas gracias por la info.

Leave a Reply