Este artículo forma parte de una serie de artículos donde iré explicando las distintas arquitecturas que tenemos disponibles a la hora de desarrollar para móvil.
Uno de los mayores inconvenientes del modelo web es las
limitaciones que nos impone a la hora de acceder a algunas características del
hardware de la plataforma o dispositivo sobre la que se ejecuta la aplicación,
ya que a pesar de que las últimas versiones de los navegadores móviles propagan
información como la orientación de la pantalla o geolocalización, esta es aun
limitada y todavía no hay forma de obtener datos del acelerómetro, la cámara o
subir un video.
Aquí es donde el modelo hibrido entra en escena. En este,
básicamente tendremos una aplicación nativa que sólo contendrá la aplicación
web embebida, de tal manera que funcionará como un wrapper que hará de puente
de comunicación entre la aplicación web embebida y las opciones propias del
dispositivo, eliminando así parte de las limitaciones del modelo web.
El usuario recibe una aplicación nativa normal que muestra
contenido web. La aplicación web interna será cacheada localmente en el
dispositivo durante la instalación, eliminando así la necesidad de una conexión
activa a la red y mejorando su velocidad y sensibilidad.
Arquitectura del Modelo Híbrido |
La comunicación entre la aplicación web y la aplicación
nativa, normalmente ocurre mediante JavaScript APIs que nos dan la posibilidad
de leer datos adicionales del móvil, y lanzar acciones como la vibración, el
acelerómetro o acceder a ficheros de un modo estándar a través de diferentes
plataformas.
Componentes del Modelo Híbrido |
Esta habilidad de combinar aplicaciones web estándar con las
nativas, puede significar una importante reducción de tiempo y coste al
minimizar el trabajo necesario de codificación. Para el usuario, una aplicación
hibrida bien diseñada, se verá muy parecido a una nativa: Se la bajará de un
app store, la almacenará en el dispositivo móvil y la ejecutará como cualquier
otra aplicación nativa. Sin embargo para los desarrolladores supone una gran
diferencia, porque en vez de tener que rescribir buena parte de la aplicación
para cada plataforma móvil, escribirán esa parte en HTML, CSS y JavaCript, y
reusarán ese código a través de las diferentes plataformas.
Ejemplos de este modelo serían la aplicación android de la
Wikipedia o la aplicación iPhone de LinkedIn.
No hay comentarios:
Publicar un comentario