- iOS (Apple)
- Android (Google)
- Windows Phone (Microsoft)
- Blackberry (RIM)
- Otros
La dificultad aparece al desarrollar una aplicación para todos estos sistema operativos, dado que cada plataforma requiere el uso de su propio entorno de desarrollo, añadiendo duplicidades de trabajo y dominio de las tecnologías:
- iOS: Entorno XCode con lenguaje de programación Objective-C
- Android: Entorno Eclipse con lenguaje de programación JAVA
- Windows Phone: Entorno Visual Studio 2010 Express for Windows Phone con lenguaje de programación .NET
Solución multiplataforma
La complejidad de particularización y desarrollo de una aplicación para diferentes plataformas, ha provocado la aparición de plataformas de desarrollo que permiten obtener aplicaciones multiplataforma con un único desarrollo. Estas soluciones normalmente son de pago aunque existen open source que no suponen ningún coste para el desarrollador.
Utilizan diferentes técnicas para conseguir su objetivo:
- Cross-Compilation
- Mobile Web App Híbrida Local
- Mobile Web App Híbrida Remota
Cross-Compilation
Concepto: Independiza el entorno de desarrollo de la plataforma de destino. El IDE utiliza un lenguaje de programación débilmente tipificado. El código es transformado a una aplicación nativa para cada plataforma.
Ventajas: Rendimiento de la aplicación, mejor experiencia del usuario, acceso a funcionalidades del dispositivo.
Inconvenientes: Complejidad del código fuente, dificultad de mantenimiento, coherencia entre plataformas y requiere entornos nativos de desarrollo (XCode, Android SDK).
Producto de referencia: Appcelerator (Titanium)
Aplicación Web Móvil Híbrida Local
Concepto: Aplicación WEB móvil ejecutada en el navegador del dispositivo o en navegador integrado en una aplicación (solución híbrida). La web está en local integrada dentro de la aplicación. Uso de tecnologías WEB conocidas. Aplicación con comportamiento semejante al nativo gracias a HTML5 y CSS3. Acceso a funcionalidades nativas mediante solución híbrida.
Ventajas: Desarrollo estándard, cubre amplia gama de plataformas móviles.
Inconvenientes :Experiencia de usuario menos enriquecida, cambios requieren actualización desde los AppStore y Google Play.
Producto de referencia: Phonegap
Aplicación Web Móvil Híbrida Remota
Concepto: Aplicación WEB móvil ejecutada en el navegador del dispositivo o en navegador integrado en una aplicación (solución híbrida). La web está hospedada en un servidor web. Uso de tecnologías WEB conocidas. Aplicación con comportamiento semejante al nativo gracias a HTML5 y CSS3. Acceso a funcionalidades nativas mediante solución híbrida.
Ventajas: Desarrollo estándar, cubre amplia gama de plataformas, los cambios no requieren actualización de la App.
Inconvenientes: Experiencia de usuario menos enriquecida.
Solución desarrollo móvil nativa (iOS, Android)
Esta es la solución adoptada para el caso de desarrollo de aplicaciones que requieran una estrecha integración con el dispositivo móvil. Es el caso del desarrollo de vídeo juegos así como las aplicaciones que ofrecen las mejores experiencias en cada plataforma.
Conclusión
Después de una revisión exhausta de los requisitos de la aplicación que se desea, Doonamis aconsejará la mejor solución de desarrollo, que permita obtener el mejor producto (aplicación) al mejor coste.