cliente de SlashMobility que quiere una app: «Me explican que hay básicamente dos tecnologías, nativo y cross. Y que dentro del ámbito de aplicaciones nativas, hay dos plataformas líderes en el mercado: Android y iOS. Hasta aquí todo bien. Ahora tengo que decidir para qué plataformas desarrollar mi app y con qué tecnologías. Pero, yo sólo soy un cliente que no entiende de tecnología. Mi conocimiento es el de un usuario de apps. ¿En qué me baso para tomar mi decisión?»
A lo hora de tomar esta decisión, debemos centrarnos en 3 criterios:
- Limitaciones de cada tecnología
- Experiencia de usuario
- Coste
Limitaciones tecnológicas
Las aplicaciones desarrolladas con tecnologías Cross pueden, a priori, hacer todo lo que puede hacer una aplicación nativa. Sin embargo, en la práctica este tipo de aplicaciones pueden tener algunas limitaciones en cuanto a tiempos de respuesta. Esto se da sobre todo en el caso de que la aplicación necesite hacer un uso “intensivo” de los sensores o del hardware de los dispositivos. Las aplicaciones Cross acceden al hardware a través de plugins hechos a medida o proporcionados por los frameworks en que se apoyan. En función de lo bien construidos que estén estos plugins la respuesta de la app será mejor o peor al acceder al hardware. De cara a poder adaptar aplicaciones que ya estén en el mercado a las posibles novedades que sacan los fabricantes de los respectivos sistemas operativos, es vital que el equipo de desarrollo del framework lo mantenga bien. Es importante saber qué frameworks utiliza tu aplicación y qué tipo de soporte tienen por parte de sus respectivos equipos de desarrollo a la hora de elegir la tecnología. Un buen asesoramiento por parte del equipo de desarrollo de tu app es fundamental.Experiencia de usuario
En la mayoría de aplicaciones la experiencia de usuario es fundamental, pero es cierto que en unas más que en otras. Si este aspecto es primordial para ti, lo mejor es que te orientes hacia aplicaciones nativas. Las aplicaciones nativas utilizan estilos de diseño específicos para su tecnología: Material design en el caso de Android y Flat design en iOS. Los usuarios de cada plataforma están habituados a que las aplicaciones de su dispositivo sigan unas determinadas guías de estilo que facilitan su usabilidad. Con aplicaciones Cross también se puede controlar el uso de diferentes layouts en función de la plataforma y el tipo de dispositivo (tablet o smartphone). Sin embargo, si tu intención es tener una app para ambas plataformas, adaptada tanto para smartphones como para tablets y que en el caso de estas últimas tenga vistas tanto horizontales como verticales, hacerlo en Cross va a ser extremadamente complejo.Coste
Hasta ahora hemos hablado de temas que favorecen las prestaciones y la experiencia del usuario con la app. Pero todo eso vale dinero. Y aquí entra en juego la ventaja de la tecnología Cross: permite limitar los costes. El código es común para iOS y para Android. Un solo código implica menos esfuerzo de desarrollo y mantenimiento, ergo más barato. El diseño probablemente será único para ambas plataformas, aunque normalmente se optimizará para una de ellas. Esto también reduce costes. Con tecnología Cross se pueden obtener aplicaciones muy potentes para determinados usos de manera más eficiente que con tecnología nativa. En resumen y simplificando:- Si te preocupa sólo el coste elige Cross
- Si en tu app prima favorecer una excelente experiencia de usuario escoge tecnologías nativas
- Si tu app hace un uso intensivo del hardware de los dispositivos y requiere tiempos de respuesta muy cortos, haz una app nativa