Hola, hola! Es una pena no haber tenido la oportunidad de manejar React Native CLI, pero de todas maneras creo que es una buena manera de poder iniciar en este tipo de Desarrollo (tomando en cuenta que Expo SDK ha recibido buenas actualizaciones últimamente).
Para quienes ya hayan manejado React Native CLI y Expo, pues las diferencias serían las siguientes:
REACT NATIVE CLI:
Genera un proyecto con lo mínimo necesario para poder correr una App con la configuración de Android y iOS abierta.
Contiene el proyecto de Android y iOS de manera independiente con la opción de poder escribir código nativo para cada plataforma.
Se necesita una Mac para el caso del control de iOS y dependencias (POD INSTALL) con Xcode.
EXPO CLI
-
En expo no existen las carpetas de Android y iOS ya que el SDK se encarga de hacer los builds necesarios para cada plataforma.
-
Puedes utilizar un template ya hecho sin necesidad de crear todo desde cero como pasa en RN CLI.
-
Puedes correr tu proyecto sin necesidad de un $npx react-native run-android/ios. => Expo tiene un ambiente súper interesante para correr apps en un sitio web con Expo Snack o en su aplicativo móvil con Expo Go.
***RESUMEN: Si su proyecto necesita manejar un performance más dedicado, lo mejor es utilizar RN CLI, pero si solo quieren probar la herramienta y no manipular algúna librería, comportamiento, engine, etc; pues lo mejor es utilizar RN Expo.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.