Desarrollo de Apps ¿Cuál es la Mejor Plataforma para MI Proyecto?

Desarrollo de Apps ¿Cuál es la Mejor Plataforma para MI Proyecto?

Con la creciente facilidad en la adquisición de dispositivos móviles y planes de datos se ha facilitado como nunca antes que las organizaciones dispongan de Apps para sus empleados y sus clientes, políticas cómo “trae tu propio dispositivo” han hecho que no sea suficiente con desarrollar para un solo sistema operativo móvil.

Según los datos del IDC en el primer cuatrimestre del 2015 Android tuvo una cuota de mercado del 78% y iOS 18,3% más allá de analizar a qué tipo de dispositivos corresponde cada cifra, podemos ver que según público al que se destine una App los sistemas operativos que soportemos significarán la diferencia entre el éxito y el fracaso.

¿Qué opciones tenemos?

Hay varias formas de lograr una App que se pueda usar en dos o más sistemas operativos, en este artículo las enunciaremos en general y luego dedicaremos un artículo a cada una de ellas.

Un concepto truculento que aparece de forma recurrente en estos de debates, es la definición de “Nativo”, si nos apegamos a una definición muy estricta únicamente el código escrito en ensamblador sería nativo, incluso el código Java para Android corre sobre una máquina virtual.

En esta serie entenderemos como nativo aquello que nos lleve tan cerca como sea posible del hardware, con la menor sobrecarga y sin requerir componentes adicionales a los provistos por el sistema operativo.

Teniendo en cuenta esto algunas de nuestras opciones serán:

  • Crear una App nativa e independiente para cada sistema operativo donde deseemos llegar, así obtendremos el mejor rendimiento posible en cada uno, pero con el costo que implica crear y mantener cada una de las Apps.
  • También podremos usar herramientas como Xamarín o Appcelerator donde el desarrollo se hace en el lenguaje que cada plataforma especifique, C# para el caso de Xamarín y Javascript para Appcelerator, se busca compartir la mayor cantidad posible de código entre las versiones para cada plataforma y al mismo tiempo personalizar la experiencia y las vistas para cada una. No podríamos llamarlas soluciones nativas ya que el código debe correr con ayuda el componentes desarrollados por el fabricante, que no se encuentran en el sistema operativo y que se empaquetan con las Apps. A pesar de eso sus fabricantes declaran que pueden alcanzar rendimientos muy cercanos al nativo.
  • Otra opción puede ser la creación de una App en HTML5 publicada en un servidor Web y a la que los usuarios acceden con el navegador, inclusive es posible crear accesos directos que se ubican en el lanzador del sistema. Sin embargo al correr sobre el navegador nos alejan bastante del hardware y del rendimiento nativo, tampoco es posible acceder a funciones como acelerómetros, contactos, información del celular, etc. Al no considerarse una App no es posible publicarla en las tiendas de cada sistema como appStore y playStore.
  • También podemos usar Cordova/PhoneGap que nos permite tomar una sitio Web como el descrito en el punto anterior y empaquetarlo en un contenedor que nos proveerá una API que nos permitirá acceder a funciones propias de teléfono, y nos permitirá publicar la App en cada una de las respectivas tiendas.  

Cada alternativa tiene sus ventajas, desventajas y desafortunadamente no existe una solución universal, la elección siempre dependerá del tipo y los requisitos del proyecto, tal como estudiaremos en detalle en los siguientes artículos de la serie.

Si te gustó este artículo seguro hay otros en este Blog que te pueden interesar, no olvides darle me gusta y compartir.

Deja un Comentario

CAPTCHA code
X