Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 15

7

Python: Framework
Django
¿Qué es un
framework?
En desarrollo de software, framework es un entorno de
trabajo que tiene como objetivo facilitar la labor de la
programación, ofreciendo una serie de características y
funciones que ayudan a acelera el proceso, reducir
errores, implementar el trabajo colaborativo y obtener un
producto de mayor calidad.
¿Para qué se utiliza un Framework en Internet?

Para cualquier proyecto en Internet requiere un desarrollador web que produzca el software o la aplicación
que necesitamos. Dependiendo del tipo de proyecto, esta tarea puede durar mucho tiempo si
se hace de cero. Por lo tanto es necesario elaborar parte por parte, haciendo pruebas y aciertos hasta
conseguir el objetivo.

Todo esto puede requerir uno o más programadores, además del tiempo suficiente para realizar las
pruebas necesarias hasta que el software esté funcionando perfectamente.
Sin embargo, los Frameworks permiten entregar un proyecto en menos tiempo y con un código más
limpio.

A partir del Framework los programadores pueden complementar y/o modificar la estructura base para
entregar el software o la aplicación que cumpla los objetivos requeridos.
¿Qué tipos de framework existen?

Los Frameworks utilizados para Internet son solo uno de los tantos que existen hoy en día. A
continuación, te mostraremos algunos de ellos.

1. Para aplicaciones web


Son aquellos Frameworks que se utilizan específicamente para la creación de proyectos online. Desde el
diseño web de una página hasta los servicios web más específicos que puedas imaginarte.
Dentro de estos Frameworks existen otros tipos, dependiendo del lenguaje de programación utilizado. Sin
embargo, nada impide que se pueda utilizar un Framework originalmente pensado en un lenguaje de
programación, en otro diferente.
Para un buen programador en muchos casos es más fácil adaptar un lenguaje a otro, que modificar un
proyecto con diferentes objetivos.
¿Qué tipos de framework existen?

2. Para aplicaciones en general


Permite complementar la estructura de una aplicación para un sistema operativo. Por ejemplo, Microsoft ha desarrollado
el .NET Framework que ayuda a los programadores a reutilizar estructuras ya elaboradas. Este Framework ya viene
instalado en su sistema operativo, es el popular de Windows.
3. Para tecnología AJAX
La tecnología AJAX permite que el usuario haga solicitaciones al servidor sin que sea necesario recargar una página después
de cada nueva solicitud. De esta forma, las informaciones van surgiendo a medida que son solicitadas sin la necesidad de que
la página quede recargándose. Existen Frameworks específicos para esta tecnología, permitiendo la reutilización de un
código ya elaborado.
4. De gestión de contenidos
A estos Frameworks también se les conoce como CMF, que significa, Content Manager Framework y facilita la
programación de aplicaciones de un Sistema de Gestión de Contenidos, popularmente conocido como CMS, por ejemplo,
WordPress.
Existe una gran variedad de CMS de acuerdo con la plataforma para la que será creada la aplicación.
5. De Multimedia
Esta interfaz facilita el trabajo de los programadores que trabajan con video, audio e imagen y colabora con la creación de
las aplicaciones multimedias en general, Resultando bastante util para proyectos más complejos, como videoconferencias y
conversores de medios.
¿Qué es Django?
Es un framework para el desarrollo web gratuito de
código abierto, basado en lenguaje Python.
Django esta centrado en el desarrollo de aplicaciones
web, y usa el principio de la programación DRY
(no repetir).
A diferencia de otros framework que están basados en
MVC (modelo vista controlador), Django se basa
en el MTV (modelo témplate vista) el cual es un derivado
del Modelo vista controlador
Diferencias entre MVC y MTC

Modulo vista: se encarga de mostrar los datos, y la manera que estos se mostraran, también puede recibir los
datos que ingrese el usuario.
Modulo Controlador: Este modulo gestiona las peticiones, se encarga de decidir que vista se mostrara como
tal. Este modulo también se encarga de solicitar datos al modulo modelo en caso de que sea necesario.
Modulo Modelo: Es el modulo que se encarga de gestionar los datos entre el sistema y el almacenamiento de
los datos. Normalmente es un gestor de base de datos que se encarga de dar respuestas a las solicitudes del
modulo controlador
Diferencias entre MVC y MTV

Modulo Modelo: al igual que el MVC este modulo almacena la información del sistema.
Modulo View: Este modulo es una conexión entre el modulo Témplate y Modelo. Decide que datos serán
mostrados y por cual témplate o plantilla.
Modulo Témplate: Es un modulo que se compone por plantillas, y se encarga de decidir como se mostrara
la información.
Diferencias entre MVC y MTV

Funcionamiento del MTV en Django


Al momento de hacer click en un enlace o escribir una dirección (1) primero se accede al mapa de URLs,
este es un archivo que asocia una URL con una view (2), si se necesita algún dato la view solicitara este a
model (3) el cual a su vez generara la consulta a la base de datos. Cuando los datos han sido traídos estos
son enviados al témplate (4) el cual contiene la lógica de presentación para estos. Luego de "pintar" la
pagina esta se envía al navegador que hizo la solicitud (5).
Base de Datos

Django cuenta con soporte para los siguientes gestores de bases de datos:
• SQLite3
• PostgreSQL
• MySQL
• Oracle
El gestor SQLite3 es el gestor que viene predeterminado cuando instalamos Django, sin embargo,
por motivos de arquitectura, soporte y rendimiento el gestor recomendado es PostgreSQL.
¿Qué es un entorno virtual?

Un entorno virtual es un espacio donde podemos instalar paquetes específicos


para un proyecto. Es decir, permite tener para un proyecto determinado un
conjunto de paquetes/librerías aislados de la instalación principal de Python en
nuestro sistema.
Beneficios:

• Puedes tener varios entornos, con varios conjuntos de paquetes, sin conflictos
entre ellos. De esta manera, los requisitos de diferentes proyectos se pueden
satisfacer al mismo tiempo.
• Puedes lanzar fácilmente tu proyecto con sus propios módulos dependientes.
Entornos virtuales

Anaconda:
Es una distribución de los lenguajes de programación Python y R para
computación científica (ciencia de datos, aplicaciones de Machine Learning,
procesamiento de datos a gran escala, análisis predictivo, etc.). Tiene como
ventaja simplificar la gestión e implementación de paquetes

Conda: Miniconda trabaja con el gestor de paquetes Conda. Conda está escrito
en el lenguaje de programación Python, pero puede gestionar proyectos que
contengan código escrito en otros lenguajes, como R, así como proyecto
multilenguaje.
Entornos virtuales

Anaconda:
Es una distribución de los lenguajes de programación Python y R para computación científica
(ciencia de datos, aplicaciones de Machine Learning, procesamiento de datos a gran escala,
análisis predictivo, etc.). Tiene como ventaja simplificar la gestión e implementación de
paquetes.

Conda:Está escrito en el lenguaje de programación Python, pero puede gestionar proyectos


que contengan código escrito en otros lenguajes, como R, así como proyecto multilenguaje.
Miniconda trabaja con el gestor de paquetes Conda.
Cibergrafía

Bustamante, S. J. (2021, 9 febrero). Entornos virtuales de Python explicados con ejemplos. freeCodeCamp.org.
https://www.freecodecamp.org/espanol/news/entornos-virtuales-de-python-explicados-con-ejemplos/

SEOEstudios. (2020, 22 octubre). ¿Qué es un framework?: Descubre todas sus ventajas.


https://www.seoestudios.es/que-es-un-framework/

También podría gustarte