¿Qué son las aplicaciones o APPs Nativas?
El mundo de los dispositivos móviles suele ser noticia habitualmente debido a su crecimiento de forma desmesurada durante los últimos años. No es de extrañar que junto a este enorme crecimiento de dispositivos móviles de todos los tipos, le siga el aumento en el desarrollo de aplicaciones móviles nativas. Seguramente como usuario estás muy acostumbrado a usar multitud de ellas (Facebook, WhatsApp, Twitter, GMAL, Instagram, etc.). Todas ellas tienen algo en común, son aplicaciones nativas. Pero, ¿qué significa realmente el concepto de aplicación nativa?
Vamos a tratar de explicarlo de un modo lo más sencillo posible.
Imaginemos dos personas. Una persona “A” la cual tiene un lenguaje nativo que es español, con todas sus formas y tipos de expresión. Imaginemos a otra persona “B” la cual su idioma nativo es inglés. Ambas pueden comunicarse perfectamente y establecer una relación con todas las personas de su mismo lenguaje nativo o país. Teniendo en cuenta este ejemplo, supongamos que se crea un nuevo lenguaje como ya se intentó hacer con el esperanto. Digamos un idioma internacional, un lenguaje que sirviera para todos pero que no disponga de todas las características que tiene cada idioma nativo.
Bien, teniendo en cuenta este ejemplo anterior vamos a cambiar las personas por dispositivos móviles, los países por sistemas operativos (Android, iOS, Windows Phone...) y los idiomas por lenguajes de programación.
En el país llamado Android, se habla un lenguaje nativo llamado Java.
En el país llamado iOS, se habla un leguaje nativo llamado Objetive-C.
El desarrollo de APPs nativas en este caso supone utilizar el lenguaje nativo de la propia plataforma para la construcción de la misma, aportándonos las siguientes ventajas:
- Estamos trabajando directamente con las funciones y SDK oficial del sistema operativo, lo cual, se traduce básicamente a NO TENEMOS LIMITES
- La experiencia de usuario y el entorno visual ofrecen un rendimiento 100% ya que se hace uso directamente de las funciones visuales y elementos gráficos que ofrece cada sistema
- Podemos acceder a todo tipo de sensores del dispositivo
- Podemos acceder a todo tipo de funcionalidades del dispositivo
Nuestra experiencia nos dice que todo desarrollo que pretenda ser sólido y escalable en el tiempo debe comenzar sin dudas por la selección de un desarrollo nativo.
Con esto no estamos diciendo que el desarrollo de aplicaciones híbridas no sea efectivo o que estemos en contra del mismo, todo lo contrario, ambos desarrollos son totalmente válidos y funcionales, la principal diferencia es a dónde queremos llegar y que es lo que pretendemos conseguir con nuestra aplicación.
Por supuesto otra de las partes que pueden ser muy decisivas es el presupuesto final.
Desde luego que el desarrollo de aplicaciones de forma nativa implica un presupuesto más elevado por las siguientes razones:
- Se necesita de un equipo multidisciplinar
- Cada desarrollo de la misma aplicación tiene un código diferente para cada plataforma
- Hay que mantener tantos códigos fuente como plataformas se hayan seleccionado en el desarrollo
Por otro lado, el desarrollo de aplicaciones híbridas puede ser muy recomendable en casos como:
- No necesitamos de conexiones a bases de datos externas complejas
- No necesitamos una experiencia de usuario y rendimiento visual 100% nativo
- Nuestra aplicación es una aplicación destinada simplemente a mostrar información
- Se trata de aplicaciones que tienen un ciclo de vida definido (por ejemplo, mostrar una promoción en concreto, un producto, etc.)
Como veis, no todo son desventajas en el sentido de optar por un desarrollo híbrido pero nosotros desde luego, siempre recomendamos trabajar en el desarrollo de aplicaciones nativas ya que no somos partidarios de las medias tintas.
Para terminar, podemos hacer una reflexión: suponemos que cuando alguien tiene en mente el desarrollo de una aplicación, la idea es llegar al mayor público posible, luego posiblemente, se fijará en las aplicaciones más punteras de los mercados de aplicaciones, y la inspiración serán estas grandes APPs que consiguen retener millones de usuarios. Y si os decimos que todas las aplicaciones en las que seguramente os habéis fijado son aplicaciones nativas, ¿aún pensáis llegar a ser como ellos optando por un desarrollo no nativo?