En este momento estás viendo React Native: Desarrollo ágil de aplicaciones moviles ⚡

React Native: Desarrollo ágil de aplicaciones moviles ⚡

Hoy me aventuro en otro jardín que no es SAP… En este caso voy hablar de React Native.

Muchos os preguntaréis: ¿que es eso? ¿para que sirve? ¿es útil?

Otros básicamente diréis: No me interesa. No es útil. No me sirve.

El resto, confiaréis y seguiréis leyendo.

Para TODOS, os invito que leáis el post y conozcáis que es React Native.

 

¿Qué es React Native?

React Native (RN) es un framework de desarrollo open source creado por Facebook (como es típico, os dejo el enlace a la wikipedia). 

Con RN podemos desarrollar aplicaciones móviles multiplataforma con un buen rendimiento.

Hasta hace poco, existían 3 formas de desarrollar aplicaciones:

  • Nativas: Se desarrollaba la aplicación nativa en el entorno elegido y se publicaba. Si queríamos estar en varias plataformas, por ejemplo Google Play y la App Store de Apple, teníamos que desarrollar dos aplicaciones.

 

  • Web Apps: En este caso se desarrollaba una aplicación web y se empaquetaba con algún framework tipo Cordova. Esto permitía crear aplicaciones multiplataforma, pero penalizaba mucho el rendimiento de la app.

 

  • Web Views: Por último tenemos este tipo de aplicación. Consiste en desarrollar una aplicación nativa pero encapsulando una web, es decir, se especifica la URL de la web que queremos y la aplicación se encarga de hacer de «navegador» dando la sensación de aplicación móvil concreta.

 

Con RN cambia un poco el escenario. Podemos desarrollar la parte visual como si fuese una web (utilización de tags pero sin ser los tags de HTML). Para el control podemos utilizar javascript o typescript, es decir, utilizaremos estos lenguajes para consumir por ejemplo una API o para mostrar mensajes.

Pero si hemos dicho que teníamos Web Apps… ¿Que diferencia React Native de estas? Una vez tenemos la aplicación creada, esta no es empaquetada como pasaba con las Web Apps, sino que es compilada a los entornos que elijamos (Android, iOs, Web). Por este motivo, con React Native tenemos un mejor rendimiento de la aplicación ya que se ejecuta nativamente.

 

 

¿Para que puede servir RN?

React Native es ideal para procesos de validación lean. Nos permite crear un producto mínimo viable rápidamente y testear mercados para validar una idea de negocio. Nos permite estar en varias plataformas móviles utilizando sólo un desarrollo, que además es muy parecido a ReactJs (cambian etiquetas y alguna cosa más).

Con RN también podemos desarrollar una aplicación móvil y web a la vez, reduciendo mucho el tiempo de desarrollo. Esto es posible gracias a Expo que nos permite compilar para varias plataformas. Si además podemos tener un backend en Node.js, podemos tener programadors full stack en javascript y cubrirlo todo.

Si a React Native le sumamos la utilización de una base de datos realtime de Firebase, podemos tener la base de datos y el backend sin necesidad de escribir código para crear éste (el backend) ya que firebase nos proporciona un API para el tratamiento de la base de datos directamente.

Como punto negativo, podríamos tener que el framework es gestionado/desarrollado por facebook, con lo cual en cualquier momento puede descontinuar el proyecto… ¡Pero merece la pena adentrarse en aprenderlo!

 

Como veis, RN nos puede ayudar en nuestros proyectos para validar con los usuarios o validar mercados. Eso no quiere decir que sólo sirva para validar… ¡Sirve para crear aplicaciones y ponerlas en producción!

 

¿Creéis que podemos hacer algo chulo con React Native y SAP? Estoy pensando en hacer una app desde 0 y subir vídeo, ¿que os parece?

 

Nos vemos en otro post… ¡Hasta otra!

Esta entrada tiene 5 comentarios

  1. Ruben

    A mi personalmente me encantaria verlo. Una aplicacion con React native que saque algun dato de algun servicio web publicado en SAP

    1. Javi Martinez Solera

      Buenas Ruben!

      Alguna cosa haremos! A ver que tal sale! Lo iré haciendo post a post para que no sea todo de golpe!

      Gracias por tu comentario!

  2. Aleix

    Hola Javier,

    Muy buena la publicación!

    Pero tengo una duda. Alguna vez has probado react native junto a Expo y Firebase? Yo he estado trabajando con ello, pero nunca he conseguido conectar rn con Expo a firebase, ya que sino tenía que ejectar la app y tendría que retocar muchas cuestiones a nivel de código nativo.

    Muchas gracias de manera anticipada por tu respuesta,

    Saludos!

    1. Buenas Aleix!

      Suelo usar Expo en mis proyectos con React Native. Para conectar la app con firebase, suelo utilizar el module firebase (ya sabes… npm install firebase) y luego tengo un fichero de configuración con las variables de entorno para utilizar ese module.

      Gracias por tu comentario!!!

Deja una respuesta