2. Framework
Es un “ambiente de trabajo, y ejecución” para desarrollar aplicaciones. En general los framework
son soluciones completas que contemplan herramientas de apoyo a la construcción (ambiente
de trabajo o desarrollo) y motores de ejecución (ambiente de ejecución).
3. Modelo-Vista-Controlador
Es un patrón de arquitectura de las aplicaciones software que:
Separa la lógica de negocio de la interfaz de usuario
Facilita la evolución por separado de ambos aspectos
Incrementa reutilización y flexibilidad
Modelo: Esta es la representación específica de la información con la cual el sistema opera.
En resumen, el modelo se limita a lo relativo de la vista y su controlador facilitando las
presentaciones visuales complejas. El sistema también puede operar con más datos no
relativos a la presentación, haciendo uso integrado de otras lógicas de negocio y de datos
afines con el sistema modelado.
Vista: Este presenta el modelo en un formato adecuado para interactuar, usualmente la
interfaz de usuario.
Controlador: Este responde a eventos, usualmente acciones del usuario, e
invoca peticiones al modelo y, probablemente, a la vista.
4. MVC en aplicaciones web
Vista:
La página HTML
Controlador:
Código que obtiene datos dinámicamente y genera el contenido HTML
Modelo:
la información almacenada en una base de datos o en XML junto con las reglas de negocio
que transforman esa información (teniendo en cuenta las acciones de los usuarios)
5. ¿Qué es Python?
Python es un lenguaje de programación creado por Guido van Rossum a principios de los
años 90 cuyo nombre está inspirado en el grupo de cómicos ingleses “Monty Python”. Es
un lenguaje similar a Perl, pero con una sintaxis muy limpia y que favorece un código
legible. Se trata de un lenguaje interpretado o de script, con tipado dinámico, fuertemente
tipado, multiplataforma y orientado a objetos.
¿Por qué Python?
Python es un lenguaje que todo el mundo debería conocer. Su sintaxis simple, clara y
sencilla; el tipado dinámico, el gestor de memoria, la gran cantidad de librerías disponibles
y la potencia del lenguaje, entre otros, hacen que desarrollar una aplicación en Python sea
sencillo, muy rápido y, lo que es más importante, divertido.
6. Django
Es un framework de desarrollo Web que ahorra tiempo y hace que el desarrollo Web sea
divertido. Utilizando Django puedes crear y mantener aplicaciones Web de alta calidad con
un mínimo esfuerzo.
En el mejor de los casos, el desarrollo web es un acto entretenido y creativo; en el peor, puede
ser una molestia repetitiva y frustrante. Django te permite enfocarte en la parte divertida, al
mismo tiempo que mitiga el esfuerzo de las partes repetitivas. De esta forma, provee un alto
nivel de abstracción de patrones comunes en el desarrollo Web, atajos para tareas
frecuentes de programación y convenciones claras sobre cómo solucionar problemas.
7. Instalando y probando
Descargar la versión más reciente de http://www.djangoproject.com/download/. Django usa
el método distutils estándar de instalación de Python
Baja el tarball, que se llamará algo así como Django-*.tar.gz
tar xzvf Django-*.tar.gz
cd Django-*
sudo python setup.py install
Si todo está funcionando bien, deberías poder importar el módulo django:
8. Comenzando un Proyecto
Esto genera una carpeta con los archivos:
Settings.py son un conjunto se variables donde se setean por ej.: los detalles de conexión
con la/s base de datos, directorios de archivos media y templates, aplicaciones ó módulos
instalados en el proyecto.
Urls.py es como una tabla donde se mapean las urls de nuestro proyecto con las funciones
que controlan la creación de nuestros templates html, de aquí en más views de cada
aplicación.
Manage.py es un wrapper del django-admin.py que realiza las sig. tareas antes de delegar el
comando al django-admin.py: pone el paquete del proyecto en el sys.path, y setea la
variable DJANGO_SETTINGS_MODULE para que apunte al settings.py de su proyecto.
9. Creando una aplicación
Esto genera una nueva carpeta dependiente del proyecto, donde se crearán los archivos:
models.py aquí crearemos las clases que forman el modelo de esa aplicación, nuestros
'business objects'.
views.py aquí van los métodos que contienen la lógica de negocio que construirá la página,
nuestras controladoras de Casos de uso. Cada una de estas funciones es llamada en
Django : View y está mapeada a una url (no necesariamente todas...) del sitio web en el
archivo urls.py del proyecto.