Aplicaciones web: qué son, tipos y diferencia con una web
En este artículo
Una aplicación web es un programa que se ejecuta en un navegador en lugar de instalarse en el dispositivo. Abres una dirección, inicias sesión y trabajas: no hay descarga, no hay instalación, y funciona igual en Windows, Mac, Linux o móvil.
Tu correo en el navegador, un editor de documentos en línea, un panel de administración, una red social: todo eso son aplicaciones web.
Aplicación web y sitio web: la diferencia real
La confusión es constante, y la línea se ha ido difuminando. Pero el criterio que la mayoría de profesionales usa es la interacción:
| Sitio web | Aplicación web | |
|---|---|---|
| Función principal | Informar | Que el usuario haga tareas |
| Papel del usuario | Lee y navega | Crea, edita y gestiona datos |
| Cuenta de usuario | Normalmente no | Casi siempre |
| Contenido | Igual para todos | Distinto para cada usuario |
| Ejemplo | Un blog, una web corporativa | Un gestor de tareas, un CRM |
La prueba rápida: si quitas la posibilidad de iniciar sesión y sigue teniendo sentido, es un sitio web. Si sin cuenta no sirve para nada, es una aplicación.
Hay casos mixtos, y son la mayoría hoy: una tienda online es sitio web mientras navegas el catálogo y aplicación cuando gestionas tu carrito y tus pedidos.
Cómo funciona por dentro
Toda aplicación web tiene tres piezas:
El cliente (frontend). Lo que se ejecuta en tu navegador: la interfaz, las validaciones inmediatas, las animaciones. Construido con HTML, CSS y JavaScript.
El servidor (backend). Donde se procesa la lógica de verdad: comprobar permisos, calcular, guardar. Escrito en el lenguaje que sea: PHP, Python, Java, Node.
La base de datos. Donde vive la información de forma permanente.
El ciclo típico: pulsas un botón, el navegador envía una petición al servidor, el servidor consulta o modifica la base de datos, devuelve una respuesta y el navegador actualiza la pantalla.
Cuando se hace bien, esa actualización no recarga toda la página: solo cambia la parte afectada. Eso es lo que hace que una aplicación web se sienta fluida en lugar de parecer una página que se recarga constantemente.
Tipos de aplicaciones web
Aplicación de páginas múltiples (MPA)
Cada acción carga una página nueva completa desde el servidor. Es el modelo clásico.
A favor: más sencilla de construir y mejor para posicionamiento en buscadores.
En contra: cada clic implica una recarga, con su parpadeo y su espera.
Aplicación de página única (SPA)
Carga una sola vez y después solo intercambia datos con el servidor, actualizando la pantalla sin recargar.
A favor: sensación de aplicación de escritorio, transiciones fluidas.
En contra: la primera carga es más pesada y el posicionamiento en buscadores requiere trabajo adicional.
Aplicación web progresiva (PWA)
Una aplicación web con capacidades que antes solo tenían las nativas: se puede instalar en la pantalla de inicio, funciona sin conexión con los datos guardados y puede enviar notificaciones.
Es la opción más interesante para muchos proyectos: una sola base de código que funciona como web y se comporta casi como aplicación instalada.
Aplicación híbrida
Una aplicación web empaquetada dentro de un contenedor nativo para publicarse en las tiendas de aplicaciones. Permite acceder a funciones del dispositivo como la cámara o el GPS.
Aplicación web frente a aplicación nativa
| Web | Nativa | |
|---|---|---|
| Instalación | Ninguna | Desde la tienda |
| Actualizaciones | Automáticas para todos | El usuario debe actualizar |
| Multiplataforma | Un código para todo | Uno por sistema |
| Rendimiento | Bueno | Mejor |
| Acceso al hardware | Limitado | Total |
| Sin conexión | Limitado (mejor con PWA) | Completo |
| Coste de desarrollo | Menor | Mayor |
| Comisión de tienda | Ninguna | Hasta el 30% |
Esa última fila no es menor: para un negocio de suscripciones, evitar la comisión de las tiendas puede ser la diferencia entre ser rentable y no serlo. Es una de las razones por las que muchos servicios prefieren que pagues desde el navegador.
Ventajas e inconvenientes
A favor
- Sin instalación. Una dirección y listo.
- Actualización instantánea. Se despliega una vez y todos los usuarios tienen la versión nueva.
- Funciona en cualquier dispositivo con navegador.
- Datos centralizados. Empiezas en el ordenador y sigues en el móvil.
- Menor coste que desarrollar y mantener varias aplicaciones nativas.
En contra
- Depende de la conexión, salvo que se implemente modo sin conexión.
- Acceso limitado al hardware comparado con una nativa.
- Rendimiento menor en tareas muy exigentes como edición de vídeo o juegos 3D.
- Depende del navegador: hay que probar en varios.
Qué se necesita para desarrollar una
- Frontend: HTML, CSS y JavaScript. Opcionalmente un framework como React o Vue.
- Backend: un lenguaje de servidor y su framework.
- Base de datos: relacional o no relacional según los datos.
- Autenticación: registro, inicio de sesión, permisos, recuperación de contraseña.
- Alojamiento: un servidor o una plataforma gestionada.
- Dominio y certificado SSL.
Si estás empezando, el camino más corto es dominar bien el frontend, aprender un lenguaje de servidor y SQL, y montar algo pequeño de principio a fin. Un proyecto completo enseña más que diez tutoriales sueltos.
La seguridad no es opcional
Una aplicación web está expuesta a internet, así que hay un mínimo que no se puede saltar:
- Validar siempre en el servidor. La validación del navegador es comodidad para el usuario; la del servidor es la que protege.
- Consultas preparadas para evitar inyección SQL.
- Escapar toda salida para evitar scripts inyectados.
- Contraseñas con hash, nunca guardadas tal cual.
- HTTPS obligatorio.
- Token anti-falsificación en los formularios.
Preguntas frecuentes
¿Una aplicación web necesita internet?
Normalmente sí. Las PWA pueden funcionar parcialmente sin conexión guardando datos en el dispositivo.
¿Es lo mismo que software como servicio?
No exactamente. SaaS es el modelo de negocio (pagar por uso); la aplicación web es la forma técnica en que se entrega. Casi todo el SaaS es una aplicación web, pero no toda aplicación web es SaaS.
¿Se puede publicar en las tiendas de aplicaciones?
Directamente no. Hay que empaquetarla como híbrida o desarrollar una versión nativa.
¿Cuánto cuesta desarrollar una?
Varía enormemente. Una herramienta interna sencilla puede rondar unos pocos miles; una plataforma completa con usuarios, pagos y panel de administración, bastante más.
¿Quieres aprender desarrollo web? En nuestro catálogo de cursos técnicos tienes formación desde cero, con acceso inmediato y de por vida.