Tipos de Aplicaciones Móviles...
Qué debemos tener en cuenta para desarrollar nuestras Apps?
Cuando ya tenemos la idea de lo que queremos hacer o cual es el enfoque de nuestra aplicación, debemos saber que existen 3 tipos o categorías de aplicaciones móviles :
- Aplicaciones Web (WebApp).
- Aplicaciones Nativas.
- Aplicaciones Hibridas.
Web App
LasWeb App son aplicaciones web enfocadas a dispositivos móviles, podemos decir que son paginas web optimizadas para trabajar en móviles, sin embargo estas son un poco restringidas para realizar procesos mas avanzados que tengan relación directa con el dispositivo móvil ya que no pueden aprovechar los recursos propios de este.
Son desarrolladas en html, css, javaScripty ejecutadas en un navegador del dispositivo, lo que permite su adaptación a la pantalla del mismo..
Ventajas
- No necesitan ninguna aprobación externa para publicarse(no requieren de googlePlay por ejemplo)
- El usuario siempre dispone de la ultima versión
- El mismo código reutilizable en otras plataformas (multiplataforma)
- Proceso de desarrollo mas sencillo y económico
- Pueden reutilizarse sitios ya diseñados
Desventajas
- Requiere de mayor esfuerzo para su promoción
- Requiere de acceso a internet
- La navegación,tiempo de respuesta y experiencia de usuario en general es mas lenta que otro tipo de aplicaciones
- Acceso limitado a los recursos hardware del dispositivo
App Nativas
Las aplicaciones nativas son creadas para dispositivos especificos, es decir si vamos a desarrollar una aplicación para dispositivos que soportan android entonces el desarrollo es nativo para android y de la misma manera para otros dispositivos como Iphone, blackberry entre otros, aprovechando así al máximo las capacidades del dispositivo.
- En Android el lenguaje para desarrollarlas es Java aunque también existe soporte para C/C++
- En IOS el lenguaje es Objetive-C. -Swift
- En Windows Phone o Windows 10 se desarrollan en .Net
El desarrollo nativo facilita el acceso al hardware del dispositivo, así como acceso a todos los recursos y cualidades del sistema, al trabajar directamente sobre la máquina, por lo regular las aplicaciones son de mejor calidad.
Hay que tener en cuenta que las aplicaciones nativas hacen uso de un SDK (Software Development Kit) especifico para cada sistema operativo, por lo tanto cada app seria diferente y poseería su propio sdk en caso de que queramos desarrollar de forma especifica para cada una...
Ventajas
- Actualización de aplicaciones constantemente.
- Se dispone de un AppStore(tienda de aplicaciones) desde donde se promociona y muestra la aplicación.
- Acceso total al dispositivo,por ende mejor aprovechamiento de recursos.
- Mejor experiencia de usuario.
- Mayor calidad en términos generales.
Desventajas
- Por lo regular es mucho mas cara desarrollar App Nativas.
- No es multiplataforma, el código fuente desarrollado no se puede reutilizar en otros sistemas.
- Se deben conocer los lenguajes específicos para cada plataforma, sintaxis, idioma etc
- Mayor tiempo de desarrollo comparado con otro tipo de App.
App Híbridas
Las aplicaciones hibridas son parte nativas y parte web, básicamente esto puede traducirse en paginas web que quedan embebidas en un componente nativo (llamado webView) que permite que corra dentro del dispositivo y así acceder al hardware del celular.
Las aplicaciones híbridas mejoran las aplicaciones web pero no del todo comparado con nativo, ya que aunque hace uso de los recursos del sistema, no lo hace totalmente.
Ventajas
- Acceso a parte del hardware del dispositivo
- Se puede distribuir en una AppStore (tienda de aplicaciones) desde donde se promociona y muestra la aplicación.
- Se puede instalar como una aplicación nativa, pero el desarrollo se hace como una aplicación web Multiplataforma
- Actualmente hay muchas plataformas para trabajo Híbrido que facilitan bastante el desarrollo y conservan el aspecto o linea visual de la App
- En muchos casos Las aplicaciones son genéricas, es decir, el aspecto visual es igual en todas las plataformas.
- La experiencia de usuario depende de la aplicación como tal, mas no del dispositivo.
En proximas entradas continuaremos revisando temas en torno al desarrollo de aplicaciones móviles, conoceremos las etapas a tener en cuenta, carácteristicas y posteriormente profundizaremos en el desarrollo de aplicaciones Android!!!!
También te podría Interesar.
- Indice de Videos Curso Android desde Cero
- Como Importar Proyectos Eclipse en Netbeans
- Redimensionar imagen en Java
- Componentes de Texto.
- Componentes Atomicos Java Swing
- Componentes Java Swing
- Que es Java Swing?
- Uso Básico de JComboBox en Java
- RadioButton en Java
- Conceptos Básicos de Programación Orientada a Objetos.