Conceptos básicos: definición de web app y ejemplos
Las aplicaciones se han convertido en parte de la vida cotidiana debido a su uso en smartphones y tablets, aunque este no está restringido solo a los dispositivos móviles, sino que también hay algunas aptas para ordenadores de escritorio. Mientras que una aplicación nativa es un tipo de software que se adapta a una plataforma determinada, una web app tiene lugar en el navegador web y guarda ciertas diferencias con respecto a las denominadas aplicaciones nativas.
Definición de web app
Una web app (aplicación web en español) se basa en HTML, JavaScript o CSS. Puesto que se carga en el servidor web y se ejecuta en el navegador, no requiere ninguna instalación. Además, también se puede crear un acceso directo para ella en el escritorio del ordenador o en la pantalla de inicio de los terminales móviles mediante un marcador.
El espectro de aplicaciones web es muy amplio, yendo desde pequeñas herramientas hasta software de gráficos o juegos de navegador, pasando por las adaptaciones de conocidos programas, como servicios de mensajería instantánea o paquetes de Office. Muchos programas y servicios se presentan en dos modalidades: en forma de web app o de native app.
Web app vs. native app
Las diferencias que existen entre ambas se dan en un ámbito técnico, es decir, en el ámbito de la programación.
Native app
Las aplicaciones nativas se programan teniendo en cuenta las características y particularidades de cada plataforma para posteriormente ser instaladas en ellas. Estas plataformas pueden ser tanto un sistema operativo móvil como Android o iOS, como un sistema operativo de escritorio como Windows. Las aplicaciones para dispositivos móviles son las que predominan en el mercado de las apps y estas reciben el nombre de Native Mobile Apps (o simplemente Mobile Apps), aunque en español también son conocidas como aplicaciones móviles nativas, aplicaciones nativas o incluso apps nativas.
Todas las aplicaciones nativas tienen en común que han sido desarrolladas para ser usadas en una determinada plataforma y solo pueden funcionar en esa plataforma en concreto. Esta es la razón por la que, por ejemplo, una aplicación Android no funciona en el sistema operativo de iOS de un teléfono móvil Apple o en los iPads. Esta dependencia de las plataformas tiene sus ventajas y sus inconvenientes. Si los desarrolladores quieren manejar más de un sistema operativo, se ven obligados a programar una aplicación exclusiva para cada uno de ellos, lo que, de cara al desarrollo de una web app, supone un gasto superior. En cambio, una aplicación nativa se adapta de manera ideal a la plataforma correspondiente y puede, incluso, utilizar el espacio de almacenamiento del dispositivo en el que se instala. Al contrario de lo que ocurre con las aplicaciones web, las native apps se prestan mejor, por ello, para funciones más complejas.
Web app
Las aplicaciones web no se adaptan tan bien al hardware del dispositivo en el que se usan, pero sin embargo, funcionan en todos los sistemas operativos y terminales que cuentan con los navegadores web que las soportan (en general, todos los navegadores actuales). En el mejor de los casos, una única aplicación es suficiente para todas las plataformas, aunque no siempre es posible optimizar la aplicación para todos los navegadores.
Una ventaja adicional de este tipo de aplicaciones está relacionada con los fallos de seguridad. En el caso de las apps nativas, estos solo se solucionan descargando una nueva versión o llevando a cabo una actualización. Por su parte, la actualización de seguridad de una web app se implementa directamente en el software, de modo que todos los usuarios puedan disfrutar de la versión más segura. Otro rasgo ventajoso de este tipo de aplicaciones es que suelen ser más asequibles y más rápidas.
A pesar de la información anteriormente expuesta, no se puede afirmar con rotundidad cuál es el mejor tipo de aplicación, puesto que ello depende de las pretensiones y de los objetivos de los desarrolladores. La siguiente tabla muestra una comparación de las características de los dos tipos de aplicaciones que se exponen en la presente guía:
App nativa | Web app | |
Plataforma | Dependiente de la plataforma | Independiente de la plataforma |
Almacenamiento de datos | En el dispositivo del usuario | Normalmente en el servidor, aunque en el caso de las aplicaciones web creadas con HTML5, el código de la aplicación y los datos pueden guardarse temporalmente |
Utilización de las funciones del dispositivo | Es posible utilizarlas en su totalidad | No es posible su utilización en la mayoría de los casos, aunque algunas aplicaciones web pueden acceder de manera limitada a las funciones del dispositivo |
Fuente | Descarga en la App Store | Visita a la página web |
Instalación | Necesaria | No necesaria |
Actualizaciones | Deben instalarse (en su caso, debe descargarse la versión actual de la app) | El proveedor será el encargado de implementarlas y están disponibles para todos los usuarios |
Conexión a Internet | No es necesaria en la mayoría de los casos | Mayoritariamente necesaria, excepto cuando la app se guarde temporalmente con HMTL5 |
Diferencias entre web apps y páginas web
Las diferencias entre aplicaciones web y aplicaciones nativas están claras, pero ¿hasta qué punto se distinguen de las páginas web convencionales? En este caso, la diferenciación no es tan exacta, tal y como muestran algunas de las web apps más conocidas
Ejemplos de web apps
Algunos servicios de Google como Google Maps, Gmail o su buscador entran dentro de la categoría de aplicaciones web, así como también Amazon (no solo la tienda online, sino también servicios como Amazon Video o Amazon Music) e eBay (tanto el portal de subastas como el tablón de anuncios de segunda mano). Con tan solo estos ejemplos ya queda patente que las fronteras entre una página web convencional y una aplicación web no son tan rígidas. Las diferencias son más obvias en el ejemplo de Microsoft Office Online, antes llamado “Office Web Apps”. La aplicación web ofrece el conjunto de programas del paquete de Microsoft Office (Word, Excel, Outlook. etc.) para acceder a ellos desde el navegador y permite, entre otras funciones, crear documentos, editarlos y guardarlos, tal y como se puede hacer con la versión del paquete de Office que requiere instalación.
Una de sus peculiaridades es la conexión con Internet: si al principio era necesario tener una conexión a Internet, hoy se pueden guardar datos en el terminal temporalmente. Si se usa HTML5, las aplicaciones web también pueden ejecutarse offline. No obstante, el número de web apps con esta función es limitado.
Web apps y páginas web: rasgos característicos
Para averiguar cuáles son las diferencias concretas entre las aplicaciones web y las páginas web tradicionales, hay que echar un vistazo al funcionamiento de una página web. En general, las aplicaciones web ponen a disposición de sus usuarios determinados servicios. En el caso de Google se puede hablar, por ejemplo, del uso de un buscador, de un correo web (webmail) o del servicio de mapas. Algunas ofertas de Amazon también pueden ser identificadas como web apps debido a las funciones de la tienda online o del servicio de vídeos a la carta.
Además, mientras que las páginas web suelen tener, en general, carácter informativo y son estáticas, las aplicaciones web contienen elementos interactivos para realizar transacciones, solicitar un servicio o utilizar un software con un determinado fin (aplicación de Office, edición de imágenes, etc.).
Debido a que son fáciles de usar y a que son independientes de cualquier plataforma, además de que no requieren instalación, las web apps contribuirán a transformar el futuro de Internet de manera determinante.