martes, 3 de julio de 2012

Comparativa de desarrollo de aplicaciones móviles en Android, iOS y Windows Phone

En esta entrada os voy a hablar de las ideas principales del desarrollo en Android, iOS y Windows Phone. Interesante para cualquiera que quiera empezar en el desarrollo de aplicaciones para móviles o simplemente quiera saber algo más sobre el tema.

Android

  • Desarrollo en Java (realmente es una versión independiente de la oficial, pero a efectos prácticos es lo mismo)
  • Herramientas de desarrollo. La principal es Eclipse a través de un plugin que ofrece Android. También podrían utilizarse otras herramientas, incluso un simple bloc de notas. 
  • Publicación. Se puede publicar cualquier aplicación en el Market de Android (ahora llamado Google Play). Incluso para instalar una aplicación en un dispositivo Android, no es necesario tener la aplicación en el Market.
  • Coste de la licencia para poder publicar aplicaciones: 25 dólares de por vida
  • Al haber tantas variedades de dispositivos, es complicado comprobar si funciona correctamente, especialmente en temas de interfaz.

iOS

  • Desarollo en Objetive-C. Un lenguaje de programación muy distinto de los tradicionales C, Java, C++, C#.
  • Herramientas de desarrollo. Son las de Apple, las cuales sólo se pueden ejecutar en un equipo con iOS. Es decir, para desarrollar en iOS necesitas un ordenador de Apple.
  • Publicación. A la hora de publicar algo en el Market, no sólo revisan que la aplicación funcione correctamente, también el contenido. Cualquier aplicación que Apple considere que es "moralmente inaceptable", la rechazará. En un dispositivo iOS sólo se pueden instalar aplicaciones del Market (a no ser que se haga un "jailbrake" con las consecuencias que tiene).
  • Coste de la licencia para poder publicar aplicaciones: 100 dólares anuales.
  • Los dispositivos iOS son limitados por lo que es más sencillo saber si la aplicación se va ejecutar bien en cada dispositivo.

Windows Phone

  • Desarrollo en .NET, es decir se puede usar cualquiera de sus lenguajes de programación: Visual Basic, C#, C++, J#.
  • Herramientas de desarrollo. Al ser .NET, es necesario el Visual Studio. Hay una versión Express que es gratuita, pero más limitada. Las herramientas de Visual Studio para desarrollo de móviles son muy potentes, especialmente en cuanto a interfaz gráfica.
  • Publicación. Las aplicaciones del Market son revisadas, pero sólo funcionalmente, no rechazan nada por su contenido.
  • Prestan móviles. Microsoft te envía gratuitamente móviles para probar las aplicaciones, luego tienes que pagar los gastos de envío de la devolución.
  • Coste de la licencia para poder publicar aplicaciones: 100 dólares anuales, gratis para estudiantes, miembros de comunidades educativas y con alguna que otra promoción.
  • Los dispositivos con Windows Phone sólo admiten una resolución (ahora con Windows 8 parece que van a tener alguna más) lo que hace que se tengan menos problemas al desarrollar la interfaz en los distintos dispositivos.
Parece que Windows Phone es el que proporciona unas mejores condiciones de desarrollo, pero tiene el inconveniente de que es el que está presente en menos dispositivos.