3.2 ¿Qué es un Framework Web?¶
Introducción¶
Cuando desarrollamos aplicaciones web, muchas tareas se repiten: manejar rutas, vistas, plantillas, formularios, autenticación, conexión con bases de datos, etc. Un framework web nos proporciona una base ya preparada para organizar y automatizar estas tareas.
Definición de Framework Web
Un framework web es un conjunto de herramientas, librerías y convenciones que facilitan el desarrollo de aplicaciones web. Su propósito es organizar el código, reducir la repetición y proteger la aplicación frente a errores comunes de desarrollo y seguridad.
Cómo un Framework facilita el desarrollo¶
- Estructura organizada: Te indica cómo organizar carpetas y archivos (modularidad).
- Manejo de rutas y vistas: Permite definir qué URL muestran qué contenido o realizan qué acciones.
- Conexión con bases de datos: Incluye herramientas para definir y consultar modelos de datos.
- Seguridad incorporada: Protege contra ataques comunes (inyección SQL, XSS, CSRF, etc.).
- Reutilización de componentes: Formularios, plantillas y módulos listos para usar.
- Aumenta la productividad: Reduce el tiempo que tardas en construir funcionalidades comunes.
Frameworks web populares en Python¶
- Django: Completo y con muchas funcionalidades “out-of-the-box”. Ideal para aplicaciones grandes.
- Flask: Minimalista, flexible, ideal para aplicaciones pequeñas o APIs.
- FastAPI: Orientado a APIs REST modernas, alto rendimiento.
También existen frameworks en otros lenguajes: Ruby on Rails, Laravel (PHP), Express (Node.js).
Ejercicios tipo test¶
Pregunta 1¶
Test Framework Web
Un framework web permite:
- a) Organizar mejor el código.
- b) Acelerar el desarrollo.
- c) Evitar vulnerabilidades comunes de seguridad.
- d) Ejecutar automáticamente Python en el navegador.
Selecciona todas las respuestas correctas.
Solución
- Correctas: a), b), c)
- Explicación: Un framework web organiza y acelera el desarrollo y proporciona medidas de seguridad. No ejecuta Python en el navegador (el frontend se ejecuta en JavaScript/HTML/CSS).
Pregunta 2 (Verdadero/Falso)¶
Verdadero/Falso Framework Web
Indica si son Verdadero (V) o Falso (F).
- Un framework web te obliga a usar una estructura específica para tu proyecto.
- Todos los frameworks web incluyen un sistema de plantillas para generar HTML dinámico.
Solución
- V
- F