Qué son las aplicaciones web
Uno de los grandes avances desde hace ya años es la posibilidad de ejecutar aplicaciones por parte de los usuarios sin necesidad de tener que instalar nada en sus equipos, lo cual facilita el acceso y mantenimiento de estas, así como la posibilidad de que los equipos de los usuarios no precisen de ser equipos muy potentes. Esto que nos parece tan útil es lo que se conoce como aplicaciones web.
Qué es una aplicación web
Ya lo hemos explicado de alguna manera en la introducción del post, pero podemos definir una aplicación web como aquella aplicación que se pueden utilizar mediante un navegador web que se encarga de ejecutarlas.
Estas aplicaciones por lo tanto son accesibles desde internet o desde una intranet corporativa, por lo que los datos y archivos son procesados y almacenados en el cloud o en los servidores que sirven la aplicación y por regla general, no necesitan que se instale nada a nivel local, es decir, en el equipo del usuario.
Como hemos comentado, toda la capacidad de ejecución de esas aplicaciones y los datos que manejan, quedan en manos de potentes servidores que llevan toda la carga del procesamiento.
Veamos con más detalle, cómo funcionan estas aplicaciones web.
Cómo funcionan las aplicaciones web
El funcionamiento de este tipo de aplicaciones es sencillo sobre el papel. Básicamente el usuario, a través de un navegador accede a la aplicación.
El usuario interactúa con la aplicación y el navegador se encarga de enviar las solicitudes del usuario a los servidores donde está alojada la aplicación y la base de datos que gestiona. A su vez, el navegador también se encarga de mostrar la información recibida por el servidor.
Todo se ejecuta en los servidores remotos y el navegador muestra la interfaz de usuario. Para agilizar el acceso a los datos, se copia en local y de forma temporal parte de los datos a los que va accediendo el usuario.
Entendiendo esto, podemos ver claramente que la arquitectura de estas aplicaciones está compuesta básicamente por tres componentes:
- La base de datos ubicada en los servidores remotos y que almacena todos los datos e información relativa a la aplicación (contenidos, permisos, usuarios, etc.…)
- La aplicación como tal que se ubicará igualmente en un servidor remoto. En una arquitectura de tres capas, el servidor de base de datos y el de aplicación son diferentes. En arquitecturas de dos capas, comparten servidor. Este diseño dependerá de las necesidades de computación estimadas.
- El navegador mediante el que el usuario accederá desde cualquier dispositivo con conexión a la aplicación ya sea un PC, un portátil, un Smartphone, una Tablet o una Smart TV
Este tipo de aplicaciones se suelen desarrollar con tecnologías muy orientadas a las mismas, aunque no de forma exclusiva. Normalmente se suele usar:
- Como base de datos SQL Server o My SQL en función de la tecnología usada para el desarrollo de la aplicación
- Para el desarrollo de las aplicaciones lo más popular es usar .Net o PHP
- La interfaz de usuario en el navegador se programa en HTML5 y JavaScript
Tipos de aplicaciones web
Dentro de las aplicaciones web, estas se pueden clasificar de la siguiente forma:
- Aplicaciones web estáticas: son aplicaciones cuyo contenido básicamente no varía y muestra contenidos poco o nada dinámicos. En su desarrollo se usan lenguajes como HTML y CSS pues no necesitan mucho más.
- Aplicaciones web dinámicas: al ser dinámicas, usan en el Backend una base de datos para gestionar el contenido y cambios de estos en la interfaz del usuario. El contenido de la aplicación se modifica y de ahí que se conozcan como dinámicas
- Aplicaciones web animadas: son aquellas cuyo diseño incluye muchos efectos visuales y gran creatividad.
- Portales: son aplicaciones web diseñadas especialmente para dispositivos móviles para facilitar la navegación y usabilidad de esta.
- Tiendas on-line: las aplicaciones de e-commerce son este tipo de aplicaciones que se han desarrollado para la venta de productos on-line.
Uso de las aplicaciones web
Las aplicaciones web tienen un ámbito de uso muy amplio. De hecho puede decirse que con las actuales tecnologías de desarrollo no tiene prácticamente límites y además la mayor parte de aplicaciones que requerían una instalación local, han ido migrando a este otro tipo de tecnología por las ventajas que aporta al posibilitar su acceso desde cualquier dispositivo con acceso a internet y sin necesidad de equipos de usuario muy potentes.
No podemos decir hoy que este tipo de aplicaciones sea una revolución, ya que hace muchos años que existen, pensemos en toda la suite de productos de Google, pero sí podemos afirmar que las empresas de desarrollo de producto que no lancen o actualicen sus productos a esta tecnología, se van a quedar sin duda atrás respecto a sus competidores.