Page 28 - Revista FIUDE 2014
P. 28
plataformas. La aplicación podrá funcionar offline, al estar instalada en el equipo. Y, dependiendo de los
diseñadores gráficos, el aspecto de la aplicación podrá ser muy similar al de las aplicaciones nativas.
Por supuesto, del mismo modo que las aplicaciones híbridas resuelven problemas de las aplicaciones
nativas y web, también tienen sus propios problemas. Por ejemplo, dado que se van a ejecutar en
plataformas diferentes, con hardware distinto, será inevitable el hecho de que habrá programación
orientada a tal o cual plataforma. Las actualizaciones, al haber pasado a estar instalada, podrán demorarse
dependiendo del usuario. No siempre se tendrá acceso pleno al hardware; hay formas de agregar “plug-
ins” para lograr tales funcionalidades, pero eso ya lleva a desarrollos nativos, específicos para tal o cual
plataforma. Y, finalmente, la performance no será equivalente a la de aplicaciones nativas, dado que
nuestro software tendrá varias “capas” -- la capa de HTML5, CSS y JavaScript que ve el usuario, más la
capa de compatibilidad, más la capa del navegador... etc.!
Consideraciones
Para elegir finalmente si optar por aplicaciones nativas, web, o híbridas, puede considerarse los siguientes
casos.
* ¿Es una aplicación interna, sólo para personal de mi empresa, o es para uso general? Los requisitos de
interfaz y usabilidad son mucho más importantes en proporción a la cantidad de usuarios.
* ¿Es para un grupo razonablemente reducido de usuarios, o es una aplicación “social”, con usuarios
potenciales a nivel mundial? Cuantos más usuarios haya, más importante es satisfacer de la mejor
manera sus requisitos.
* ¿Se precisa disponer de la aplicación en varias plataformas, o puedo restringirme a una o dos?
Considerar que el mercado actual (79% Android, 13% Apple, 4% Windows, 3% BlackBerry, 1% otros)
está mayoritariamente concentrado en dos líderes, puede ser útil.
* ¿Tendrán todos los usuarios el mismo tipo de dispositivo móvil? Una aplicación para uso empresarial,
en equipos provistos por la empresa, puede limitarse, pero la tendencia BYOD (“traiga su propio
dispositivo”) es cada vez más importante, amén de que reduce costos.
* ¿Es una aplicación B2E (empresa/empleado), B2B (empresa/empresa), B2C (empresa/cliente), o de
otro tipo?
* ¿Qué previsión de costos tengo? La estimación corriente es que desarrollar aplicaciones nativas
implica costos 150-200% mayores.
* ¿Es importante disponer rápidamente (“time to market”) la aplicación?
* ¿Hay limitaciones de dinero, tiempo, recursos humanos?
Hoy en día, se estima que el 80% de las aplicaciones disponibles son nativas, 5% híbridas, y 15% web,
pero algunas estimaciones de tendencias pronostican que las híbridas podrían llegar al 50% en un par
de años.
Herramientas
Hay múltiples opciones disponibles para el desarrollo de aplicaciones híbridas. Para la interfaz de
usuario, puede citarse jQuery Mobile, Sencha Touch, Dojox.mobile, PhoneJS, e incluso GWT (Google Web
Toolkit). Para la integración con el navegador nativo, PhoneGap, IBM Worklight, Appcelerator Titanium y
Xamarin son las opciones más utilizadas. En cuanto a la forma de trabajo, cualquier empresa que tenga
un mecanismo en funcionamiento para la implementación de aplicaciones web, ya tiene prácticamente
todo lo necesario para aplicaciones híbridas, pues sólo habrá que retocar los procedimientos para la
integración final y la prueba de las aplicaciones.
Reflexiones sobre Ingeniería