~/VibeHandbook
PDF gratis

App / Móvil

reactnative.dev

React Native

Qué es

React Native es un de código abierto, creado en Meta, para construir apps móviles nativas usando React y JavaScript (o TypeScript). Escribes componentes de la misma forma que lo harías para la web, pero se renderizan como widgets reales de la interfaz de usuario (UI, User Interface — la parte de la app que ves en pantalla) nativa de iOS y Android, en lugar de una vista web. Una gran parte del código se comparte entre ambas plataformas, aunque siempre puedes bajar a código nativo específico de la plataforma cuando lo necesites.

Puntos fuertes

  • Una sola base de código, dos plataformas — comparte la mayor parte de la lógica y la interfaz entre iOS y Android.
  • Usa React, así que los desarrolladores web son productivos rápidamente y el ecosistema es enorme.
  • Renderiza componentes verdaderamente nativos, no una vista web, para una sensación genuinamente nativa.
  • Fast Refresh da retroalimentación casi instantánea mientras editas.
  • Vía de escape: escribe módulos nativos en Swift/Kotlin cuando alcances un límite.

Compensaciones

  • Piensa en un traductor que transmite mensajes entre dos personas que hablan idiomas distintos: hay un pequeño retraso en cada intercambio. React Native tiene un puente similar entre JavaScript y el código nativo, y esto puede complicar el trabajo crítico en rendimiento o cargado de animaciones.
  • Las dependencias nativas y las herramientas de compilación pueden ser frágiles y sensibles a las versiones.
  • Sigues necesitando conocimiento de la plataforma (y una Mac para compilaciones de iOS) para las partes difíciles.
  • Algunas funciones más nuevas del sistema operativo (OS, Operating System — el software central del dispositivo, como iOS o Android) tardan en llegar hasta que la comunidad o tú mismo las envuelves.

Cuándo usarlo

Recurre a React Native cuando quieras que un solo equipo y una sola base de código lancen una app nativa tanto en iOS como en Android, especialmente si tu equipo ya conoce React. Encaja muy bien con apps de contenido, comercio y de tipo CRUD (Create, Read, Update, Delete — crear, leer, actualizar, eliminar).

Encaje con vibe coding

React Native es amigable para la programación asistida por IA porque, en esencia, es solo React — los asistentes son muy fluidos con componentes, hooks y props. Pídele al modelo que use TypeScript, que mantenga los componentes pequeños y sin estado cuando sea posible, y que lo combine con Expo para compilaciones y módulos nativos sin complicaciones. Indica de antemano las plataformas objetivo y cualquier capacidad nativa necesaria, para que el código generado recurra a las librerías correctas.

import { Text, Button, View } from "react-native";
import { useState } from "react";

export default function Counter() {
  const [count, setCount] = useState(0);
  return (
    <View>
      <Text>Count: {count}</Text>
      <Button title="Add" onPress={() => setCount(count + 1)} />
    </View>
  );
}