Regístrate para acceder a más de 15 cursos gratuitos de programación con un simulador

Microframeworks Aspectos clave del desarrollo web en Python

El backend de una aplicación web pasa la mayor parte del tiempo procesando solicitudes desde el frontend. La reacción en respuesta a la solicitud depende de qué dirección solicitamos y qué verbo HTTP usamos.

Los dos verbos más utilizados son:

  • Solicitud POST
  • Solicitud GET

Aprenderás más sobre los verbos del protocolo HTTP en el curso correspondiente. Por ahora, simplemente aclaremos que el verbo es una parte de la solicitud, al igual que la URL en la barra de direcciones del navegador.

Prácticamente en cualquier aplicación web necesitas:

  1. Aceptar la solicitud.
  2. Determinar qué manejador debe ejecutarse.
  3. Ejecutar el manejador y preparar la respuesta.
  4. Devolver la respuesta al cliente.

Este conjunto de acciones prácticamente no cambia de proyecto a proyecto, por eso lo meten en un framework. En esta lección, entenderemos cómo funcionan los microframeworks y para qué tareas se utilizan.

Qué es un framework

Un framework típico opera bajo el principio de "no nos llames, nosotros te llamaremos":

  • El usuario del framework inserta sus funciones en la estructura diseñada.
  • El framework decide cuándo y qué funciones ejecutar.

Esta es la principal diferencia entre un framework y una biblioteca común: las bibliotecas generalmente le dan el control al usuario.

Veamos un ejemplo de código creado con un framework web:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, World!'

Estas cinco líneas son una aplicación web ya lista, aunque sólo contiene un manejador hello_world.

Fíjate en lo breve que es el código del manejador: solo devuelve una cadena y es una función bastante sencilla. La verdadera magia sucede con el decorador @app.route, que conecta el manejador a una ruta específica.

La ruta es la parte de la dirección que sigue al nombre de dominio en una solicitud HTTP. Por ejemplo, consideremos esta dirección:

https://foo.bar/this/is/a/path

Encontramos la ruta en ella:

/this/is/a/path

Volviendo al primer fragmento:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, World!'

Aquí hello_world responde a las solicitudes a través de la ruta '/'. Este es el root,es decir, el camino mínimo posible.

Por ejemplo, en la dirección https://codica.la/ el slash final es precisamente este root del sitio, es decir, su página principal.

El ejemplo presentado ilustra el uso del microframework Flask. El prefijo "micro-" indica que el framework se enfoca principalmente en la gestión de la ruta, es decir, en la correspondencia entre las rutas y los controladores. En algunos casos, un microframework también puede incluir la capacidad de generar respuestas simples, como respuestas de texto, tal como se mostró en el ejemplo anterior.

Qué distingue a los microframeworks de los frameworks comunes

La "microscopía" a menudo se asocia con el hecho de que las pequeñas aplicaciones web creadas con microframeworks suelen ajustarse a un solo archivo de código.

En cambio, frameworks más grandes como Django requieren una distribución cuidadosa del código en paquetes y módulos, siguiendo reglas estrictas.

Con el tiempo, es probable que añadas bibliotecas para funcionalidades adicionales a tu microframework. Por otro lado, un gran framework generalmente ya incluye código para diversas situaciones.

Esta diferencia entre "el mínimo razonable" y "todo de una vez, siguiendo reglas estrictas" impacta en la facilidad de aprendizaje. Comenzar con un microframework es mucho más accesible. Los grandes frameworks se pueden dominar más adelante, cuando te sientas cómodo con los fundamentos de la programación web y decidas crear algo más complejo.

Podrías pensar que los microframeworks son solo para proyectos "juguetones" o "educativos", pero eso no es del todo correcto.

Los microframeworks se utilizan en proyectos reales, incluso grandes. La diferencia entre un gran framework y un microframework con bibliotecas adicionales puede ser mínima, y a menudo la elección depende completamente de las preferencias del desarrollador.

Para acceder completo a curso necesitas un plan básico

El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.

Obtener acceso
130
cursos
1000
ejercicios
2000+
horas de teoría
3200
test

Obtén acceso

Cursos de programación para principiantes y desarrolladores experimentados. Comienza tu aprendizaje de forma gratuita

  • 130 cursos, 2000+ horas de teoría
  • 1000 ejercicios prácticos en el navegador
  • 360 000 estudiantes
Al enviar el formulario, aceptas el «Política de privacidad» y los términos de la «Oferta», y también aceptas los «Términos y condiciones de uso»

Nuestros graduados trabajan en empresas como:

Bookmate
Health Samurai
Dualboot
ABBYY