Desarrollar aplicaciones móviles se está convirtiendo para algunos desarrolladores y empresas en una importante fuente de ingresos, y no es un secreto que el uso de los dispositivos móviles se ha disparado en los últimos años de manera exponencial.
Desarrollar aplicaciones móviles no es tarea sencilla, aún siendo programador hay muchos puntos a tener en cuenta antes de sentarse ante el temido archivo vacío, entre otros que herramientas vamos a necesitar para desarrollar aplicaciones móviles.
Digamos que existen tres tipologías para distinguir las aplicaciones móviles:
1. Aplicaciones nativas.
2. Aplicaciones híbridas (www.cordova.apache.org).
3. Aplicaciones web.
Desarrollar aplicaciones móviles nativas
Son aquellas para las que vamos a utilizar el lenguaje nativo propio de cada plataforma móvil, es decir, JAVA en Android, Objetive-C en iOS, etc. Evidentemente esto tiene una desventaja muy importante, y es que tendremos que usar (y aprender) diferentes lenguajes nativos y desarrollar (y mantener) la aplicación tantas veces como plataformas queramos producir.
La ventaja más importante de estas aplicaciones es el rendimiento, puesto que programamos directamente la máquina el aprovechamiento del hardware es más óptimo.
Otra ventaja importante es que las aplicaciones tienen una apariencia más «acorde» a nuestro sistema operativo (iOS, Android, Blackberry) puesto que utilizan todos los botones, menús y componentes nativos
Desarrollar aplicaciones móviles híbridas (phonegap).
La ventaja de usar Cordova para desarrollar aplicaciones móviles es su bajo coste de producción. De este modo podremos publicar una app en cualquier plataforma con un sólo desarrollo, lo que nos ahorra costes de mantenimiento y actualización.
También es una ventaja el hecho de que estas aplicaciones se desarrollan mediante lenguajes web (HTML, CSS, JS). En este caso es buena opción utilizar frameworks, siempre sin abusar de ellos, como ionic o jquery mobile. Esto nos facilita la tarea, sobre todo a los desarrolladores web que ya tenemos medio camino hecho en este sentido
Para conseguir una experiencia “casi” nativa con las aplicaciones híbridas, definiremos bien lo que queremos hacer y después lo adaptaremos al rendimiento.
Desarrollar aplicaciones móviles web.
En este caso, para desarrollar aplicaciones móviles web (HTML, CSS, JS, PHP, ASP, etc), simplemente se desarrolla una página web optimizada para dispositivos móviles, o responsive. Se optimiza también para ser utilizadas en pantallas táctiles.
Para utilizar estas aplicaciones el usuario tiene que abrir el navegador web de su teléfono o tablet, también, en función del dispositivo puede crear un acceso directo en su escritorio y utilizarla como si se tratara de cualquier otra aplicación.