¿Qué es React Native?

React Native es un framework de desarrollo diseñado por Facebook que permite crear aplicaciones nativas de Android e iOS utilizando JavaScript.

¿Qué es React Native?
Photo by Lautaro Andreani / Unsplash

React Native es un framework de desarrollo de aplicaciones móviles nativas basadas en React creado por Facebook.

Permite crear aplicaciones nativas de Android e iOS utilizando JavaScript. Luego, React Native se encarga de convertir los elementos para renderizarlos con código nativo, ofreciendo una velocidad y optimización bastante buenas.

¿Por qué utilizar React Native?

Hay muchas razones para comenzar a utilizar React Native para las apps móviles. Entre ellas, destacaría las siguientes:

  • Cross-Platform: Solamente escribes el código en JavaScript, y React Native se ejecutará perfectamente en ambas iOS y en Android de forma nativa.
  • Base de código: Al ser una aplicación escrita en JavaScript, no habrá que implementar las funcionalidades en iOS y en Android por separado, sino que se implementarán conjuntamente desde React Native.
  • Velocidad: La forma que tiene React de funcionar, combinado con la utilización de componentes nativos de cada sistema hace que la aplicación sea rápida y fluida, al contrario que con otros frameworks de creación de apps basadas en JavaScript.
  • Combinable: No hace falta que la aplicación entera esté realizada en React Native. Puedes crear módulos en React Native e implementarlos en aplicaciones ya existentes.

Desventajas de React Native

Las desventajas que posee el uso de React Native no son distintas a las de otros frameworks de desarrollo en JavaScript:

  • Código JS: Aunque utilice componentes nativos, muchas funcionalidades siguen estando implementadas en JavaScript, código que tiene que ser interpretado y que, queramos o no, será siempre más lento que el código compilado del sistema.
  • Funcionalidades avanzadas: Como toda aplicación híbrida, nos vendrá genial para aplicaciones y funcionalidades que no requieran la personalización de los componentes nativos (por ejemplo, una cámara personalizada con efectos a tiempo real), o el uso de características como FaceID o el KeyChain de Apple, teniendo que apoyarnos en código nativo para hacerlo funcionar.

Más información