Martes, 19 de Febrero de 2013

Programación en móviles: Entender las plataformas

Para el autor, la clave no radica necesariamente, en el hardware de un equipo, sino en las plataformas que le dan soporte y las aplicaciones que brindan al usuario. El autor de esta columna sugiere un estudio de los sistemas operativos y las herramientas de programación.

Desde su nacimiento, los teléfonos celulares han crecido y mutado en dispositivos que serían el orgullo de cualquier guionista de ciencia ficción. Ya no hablamos de un dispositivo destinado a comunicarnos verbalmente y ni siquiera a uno con un conjunto de aplicaciones, si no que hablamos de pequeñas computadoras de alto rendimiento.

Pero la clave de estos dispositivos no radica, necesariamente, en su capacidad de hardware, si no, en las plataformas que le dan soporte, en las aplicaciones que son brindadas al usuario final.

Los actores

Es importante entender quienes son los principales proveedores de sistemas para los dispositivos ya que esto nos ayudará  a entender con que plataformas de desarrollo nos enfrentaremos.

Tanto Gartner, Nielsen como comScore distinguen cuatro grandes proveedores, los cuales poseen cuatro diferentes ambientes y soportes para el desarrollo. Como líder, Google con su Android (46%), Apple con iOS (30%)RIM (15%) y Microsoft con Windows Phone (4.6%). Este último, si bien cuenta con una cuota de mercado pequeña, la misma Gartner ha pronosticado un crecimiento tal en los próximos años que podría llevarlo a ocupar el segundo puesto en esta escala.

Que elegir como plataforma objetivo

Por supuesto, cada uno de estos actores no son mutuamente compatible a nivel de desarrollo de aplicaciones y al mismo tiempo, ninguno de ellos posee la mayoría del mercado, por lo que es necesario que diversifiquemos nuestros desarrollos, sea mediante plataformas mixtas, nativas o totalmente remotas.

Hablar de plataformas nativas es, posiblemente, la forma más fácil y simple de desarrollo, algunas de sus ventajas:

  • Al ejecutarse en el dispositivo pueden acceder y manipular todo su hardware.
  • Resultan más eficientes en su ejecución al estar más cerca del sistema operativo.
  • Pueden ser descargadas y compradas por el usuario desde los diferentes sistemas de tiendas virtuales del proveedor del sistema operativo.

Es posible considerar que las mayores desventajas están relacionadas al costo de producción de nuestro producto, ya que cada uno de estos dispositivos se fundamenta en diferentes tecnologías y lenguajes como Java, Object-C, C#, C++, etc.

El otro extremo viene de la mano con entornos remotos basados en la Web. Con la aparición y uso de HTML5 y CSS3, y el soporte sobre estos estándares por parte de los dispositivos, resulta una propuesta atractiva para tratar de abarcar la mayor cantidad de dispositivos con un lenguaje común como JavaScript. Las posibles desventajas:

  • Se requiere un navegador instalado en el dispositivo con soporte para estos estándares.
  • No se puede distribuir la aplicación mediante las tiendas virtuales
  • Requiere de plugins o gestiones adicionales para el mejoramiento del código.
  • Pueden no resultar atractivas de usar para el usuario.
  • No pueden hacer uso del hardware del dispositivo.

El modelo mixto, o intermedio, es aquel que, mediante el uso de adaptadores, incrustan las funcionalidades de un navegador en una aplicación nativa, pudiendo hacer uso de los estándares de la Web (HTML5 y CSS3) y el hardware del teléfono, además de poder ser distribuida, la aplicación, mediante las tiendas virtuales. Herramientas como PhoneGapSencha o Trigger.io han sido diseñadas para facilitar este ambiente mixto. En el caso de esta última, por ejemplo, proveyendo componentes de forma nativa para lenguajes no nativos del dispositivo.

No debemos dejar de mencionar que a lo anterior es necesario sumarle los servicios de backend o server-side ya que muchas de estas aplicaciones se sustentan con servicios en la nube, los cuales son los responsables del manejo del tráfico de datos entre la aplicación y origen de la misma. Por lo tanto, es vital, contar también con una visión de esta infraestructura bajo los modelos SaaS (Software como Servicio), PaaS (Plataforma como Servicio) u otro, y así asegurar el ecosistema de esa aplicación en una plataforma móvil.

Por Facundo Díaz
Mobile Lead Engineer de Global Logic

Últimos lanzamientos Ver más

  • Edgardo

    He visto exactamente la misma nota hace un tiempo firmada por otro autor. Sr Facundo Diaz, ud está seguro que escribió esta nota?

  • Blazik

    Objective-C, no Object-C.

  • Franlu

    Hmm, creo que las WebApps tienen mucho más futuro que el que habla el autor de esta nota. Si bien no podemos usar todo el hardware, gran parte de este sí es usable.

    Y hay suficientes elementos, como Phonegap, para hacer una webApp lo más adaptable posible a cualquier plataforma, accediendo fácilmente al hardware.

    Tampoco hay q desprestigiar la plataforma Phonegap, ya que en esta escribimos un solo código para 7 plataformas distintas. Caso contrario hay que comprarse una Mac para poder instalar y aprender todos los lenguajes posibles.

    La curva de aprendizaje no es menor a un año. Con Phonegap en dos meses programas para cualquier plataforma.
    Un saludo,
    Franlu

  • despertemos

    Importa poco lo que diga “Gartner”, es decir el panorama ya no dice que va a desaparecer como Zune y otros fracasos.Hay que aceptar la realidad de una ves, porque no va a ganarle a los otros solo por ser Microsoft. Un sistema operativo cerrado tiene MUCHAS desventajas en los celulares las cuales no se sentian mucho cuando estaban en el PC.

    • Federico Dominguez

      Se basan en la fidelidad de la mayoria de los consumidores a nivel mundial de comprar un terminal Nokia sin imortar el SO. Nokia con su symbian sigue siendo uno de los SO más usados. La gran mayoria compra una marca y no un SO y Nokia sigue siendo un marca de calidad para la gran mayoria.

    • qweqweqwe

      Las ventas anuales dicen otra cosa…

      capas no te diste cuenta pero el robot verde se ve cada mas en todos lados y la gente se va preguntando que significa ese robot…

  • dudadupa

    7 ” Android 4.0 4GB allwinner a13 capacitiva Q88 doble Cámara de Tablet PC ,
    precio de promoción: Euro € 52, http://7vd.cn/753

    65% de descuento Eken M008S 9,7 pulgadas Android Tablet PC (envío gratis ), http://7vd.cn/754

    Esto no es truco comercial falso porque está pasando de verdad , venga , vamos a
    comprobar a cabo ahora mismo ! Muchas sorpresas te esperan !!