Plataformas móviles: ¿Desarrollo nativo o no? 4

Llegado el momento de desarrollar una aplicación para dispositivos móviles multiplataforma hay que elegir entre hacer desarrollos nativos para cada una de las plataformas u optar por un único desarrollo multiplataforma.

Lo que voy a explicar es a partir de mi experiencia en desarrollo multiplataforma con Flex y de desarrollo nativo en iOS, en el que estoy un poco más verde.

Ventajas de mulltiplataforma sobre nativo.

  • La primera y más obvia ventaja es el coste. Es obvio que va a tener menor coste hacer un único desarrollo que múltiples.
  • Reutilización de código: si vas a portar una aplicación web o flex a una plataforma móvil se puede reutlizar parte del código, principalmente todo lo que tenga que ver con modelo y negocio.

Ventajas de nativo sobre multiplataforma.

  • La principal ventaja es el resultado. Las apps que no nos nativas son increíblemente más lentas que las nativas, dejando una experiencia de usuario pésima. 
  • Diseño: una razón por la que mucha gente apuesta por el desarrollo multiplataforma es tener un único diseño exacto para todos las plataformas, pero ¿no es esto un error?. Los usuarios de cada plataforma están acostumbrados a unas peculiaridades, unificarlo el diseño en de una app puede resultar en que a todos los usuarios le extrañe. 
  • Diferencias en cada plataforma a la hora de desarrollar. Sí, el primer punto el que explicaba que un único desarrollo sirve para múltiples plataformas tiene letra pequeña. Son muchas las ocasiones en las que hay que hacer distinción entre plataformas para desarrollos, sobre todo con lo relacionado con las funciones nativas de la plataforma: rotación, lectura de ficheros internos, funcionamiento del navegador nativo incrustado en la app… 
Como empresa, ¿qué hago?

En mi opinión, una empresa debe optar por un desarrollo multiplataforma siempre y cuando éste sea para uso empresarial. No va a haber ningún empleado que se vaya de la empresa porque la aplicación que use para trabajar va un poco lenta. Esto además supondría un ahorro de costes considerable.

Se debe optar por desarrollo nativo sólo si la empresa va a orientar el producto de cara al público y tiene la capacidad económica de rentabilizar desarrollos para múltiples plataformas.

Como desarrollador, ¿qué hago?

Si quieres trabajar para una empresa de producto orientado al público, especialízate en desarrollo nativo. En cambio, si prefieres trabajar en múltiples proyectos en una consultora lo mejor es especializarse en desarrollo multiplataforma.

4 thoughts on “Plataformas móviles: ¿Desarrollo nativo o no?

  1. Reply Juan José Jan 13,2013 5:01 pm

    Existen varios agujeros. Uno de ellos es que si es una aplicación empresarial, seguramente la empresa opere en una plataforma, con lo que la aplicación puede ser nativa. 🙂

    Si el proceso es un proceso vital, también puede compensar tener una plataforma nativa. O si el proceso tiene una interfaz de usuario muy ligera. 😉

    • Reply vasconita Jan 13,2013 6:52 pm

      En primer lugar gracias por comentar :).

      Estoy de acuerdo con ambas afirmaciones, no he querido escribir dogmas, sólo mi opinión respecto al tema.

      En cuanto al tema de aplicaciones empresariales no me refería tanto a que tengan tablets android, iPad y windows, sino a que ya tuvieran una aplicación web o de escritorio y que la porten fácilmente a dispositivos móviles mediante una de las tecnologías que lo permitan.

      Y en cuanto a lo segundo, sí, estoy totalmente de acuerdo.

      • Reply Juan José Jan 13,2013 7:02 pm

        Al final es medir los costes/ganancias de una decisión. A veces es muy fácil estimar el coste monetario… pero no estimar la ganancia de tener una interfaz mejor. La verdad es que la experiencia me lleva diciendo durante años que una interfaz buena es lo mejor que puedes hacer. Ahorra tiempo, soporte, confusiones y de todo.

        Haz interfaces nativas y cercanas al usuario a no ser que de verdad tengas otra cosa mucho mejor en la que gastar el tiempo.

        Gasta el tiempo en algo real y útil para preventir que la gente malgaste su tiempo que en otra cosa. Cierra Facebook y Twitter… ¡y a diseñar! 🙂

  2. Reply vasconita Jan 13,2013 7:19 pm

    Cierro twitter y me tienen que dar medicación dura, y lo sabes xDD.

Leave a Reply