Desarrollo para dispositivos móviles
Todas las previsiones referidas a la adopción de teléfonos inteligentes y tabletas, que se han ido realizando en los últimos tiempos han parecido exageradas cuando se hacían, y sin embargo, al poco tiempo quedaban sobrepasadas por la realidad.
Para un número importantísimo de personas los dispositivos móviles son el lugar desde el cual utilizan las aplicaciones tanto a nivel personal como de empresa. Las compañías de software intentan no perder el tren del cambio y se adaptan a estos dispositivos, pero la variedad de plataformas complica mucho alcanzar los mejores objetivos.
Aunque solo tengamos en cuenta a los principales fabricantes, ya estamos contando, al menos con Apple y su sistema operativo iOS para iPhone e iPad, que es en gran parte el responsable del boom, y lucha por el primer puesto del mercado con Android, sistema basado en Linux de Google; detrás vienen BlackBerry, que si bien ha perdido muchos usuarios, sigue teniendo importancia en el ámbito de la empresa, y por último Microsoft, al que nunca hay que descartar, y que además ofrece varias plataformas diferentes por sí mismo, como son Windows Mobile y Windows Phone para smartphones, y Windows 8 tanto para teléfonos como tabletas.
Si nos planteamos qué opciones de desarrollo de aplicaciones tenemos, habremos de tener en cuenta las especificidades de cada fabricante.
- BlackBerry ofrece un SDL nativo en C/C++, pero también soporta Adobe AIR con su lenguaje ActionScript, y Java con la BlackBerry Java.
- Android proporciona el Android DevelperToos, que es un plugin para Eclipse que se programa en Java. La aplicación o App que desarrollemos lo podemos distribuir libremente o subirlo a la Google Play, el repositorio público de Google, pero tendremos un límite de 50 Mg por App. Registrarse como desarrollador cuesta 25 dólares, una sola vez.
- Apple iOS ofrece el Xcode 4, programable en C++. La distribución de las aplicaciones es obligatorio hacerlas a través de la App Apple Store, donde te puedes dar de alta como desarrollador por 99 dólares al año.
- Microsoft ofrece Visual Studio 2010 o versiones anteriores y sus lenguajes .NET para Windows Mobile (con el Compact Framework), y para Windows Phone, y la versión 2012 para Windows 8. También hay un Microsoft Marketplace, que no es obligatorio, pero que puede ayudarnos a exponer nuestras Apps al público.
Así pues, si la aplicación que vamos a desarrollar puede ser utilizada desde cualquier plataforma, en principio, parecería que debemos ser capaces de desarrollar y mantener tres versiones de la aplicación en C++, Java y .NET. Cuando menos, es difícil y caro.
Solución
La solución, como ha ocurrido en otras ocasiones, está en los estándares abiertos. Podemos desarrollar la aplicación con HTML, CSS y JavaScript, y una vez finalizada utilizar el servicio gratuito de PhoneGap para crear los paquetes distribuibles en Android, BlackBerry, iOS, Symbian, WebOS, Windows Phone 7 y 8, Windows 8, Bada y Tizen. PhoneGap es un servicio en la nube, de código abierto, que recientemente ha sido adquirido por Adobe. Con las nuevas definiciones de HTML5, CSS3 y JavaScript (ECMA 5), y las librerías de JavaScript como jQuery, que cada día son más elaboradas, esta opción es una solución realista para el desarrollo de aplicaciones profesionales. Además mediante protocolos de red como XmlHTTPRequest, Web Sockets, etc., la aplicación desplegada en los dispositivos móviles puede tener servicios de backend realizados en PHP, ASP, JSF, Java o .NET.
Sin embargo, como sabemos, sin contar con un entorno de desarrollo adecuado, programar estos lenguajes, puede convertirse en una tarea lenta y poco productiva. De momento contamos con dos IDEs potentes para realizar este tipo de aplicaciones. Uno es Visual Studio 2012, que aunque tiene un propósito más general, nos permite crear proyectos específicos de JavaScript. El otro, más especializado, es HTML5 Builder de Embarcadero, que para la parte servidor utiliza PHP, y proporciona librerías de componentes que facilitan el trabajo de creación de contenidos, estilos y funcionalidades, sin requerir demasiada práctica con HTML, CSS y JS.
Otra de las ventajas de trabajar con HTML, CSS y JS es que al ser estándares podemos utilizar diferentes entornos de desarrollo según estos vayan evolucionando, y también que los navegadores ofrecen un soporte cada vez mayor, e incluso van incorporando herramientas de programación y depuración para los desarrolladores.
Una última opción es la propuesta de Embarcadero RAD Studio compuesto por Delphi y C++Builder, que permite desarrollar aplicaciones para Windows y MAC OS utilizando la librería FireMonkey, que mediante la incorporación del SDK para iOS y Android, permite compilar también para Apple iOS y Android.
> Si tiene alguna pregunta sobre el artículo contáctanos.
Dejar un comentario
¿Quieres unirte a la conversación?¡Siéntete libre de contribuir!