¿Debo portar una aplicación Swift de iOS existente a una aplicación nativa de reacción?

Si si:

  • Desarrollarás una versión de Android de la misma aplicación, pero no querrás dedicar mucho tiempo / recursos a hacer esto. A pesar de que React Native no es una solución de escritura una vez que se ejecuta en todas partes, aún podrá reutilizar una gran cantidad de código para Android. (En realidad, puede esperar reutilizar hasta el 80% del código).
  • Tiene fuertes desarrolladores de React.js a bordo, y están interesados ​​en el desarrollo nativo.

No si:

  • Estás hablando de algo con muchos recursos (como un juego). React Native es cercano al verdadero nativo en cuanto a rendimiento, pero no es nativo.

Básicamente, podría ser una buena idea tener su aplicación de Android desarrollada con React Native, y luego usar partes de su código para iOS. Si logras crear una aplicación con menos errores para Android, eso es …

Aún así, no espere que React Native solo resuelva sus problemas: no es una bala de plata, es solo otra tecnología que es adecuada para su propósito.

No. No hay razón para suponer que reaccionar nativo resolverá automáticamente su problema. Lo más probable es que la aplicación esté escrita por un ingeniero inexperto o uno en el que los requisitos no se aclaren en los fragmentos principales, por lo que el desarrollador ha recurrido a ducktaping.

Un mejor uso del dinero sería hacer que la fuente de la aplicación sea evaluada por su diseño e integridad por un ingeniero con experiencia más razonable. Siempre hay una manera de mejorar la comida de pieza base de código existente en lugar de reescribir. Esto también lo ayudará a comprender los problemas arquitectónicos y no a repetirlos en Android (incluso si no termina tocando iOS por ahora). Una vez que la versión de Android se desarrolla en una base de código más sensata, los aprendizajes se pueden volver a aplicar a iOS (pero muchas cosas no se pueden asignar directamente a iOS).

Lo primero que debe tener en cuenta es que React Native todavía es específico de iOS; la reimplementación en React Native no significa que de repente tenga una aplicación de Android. El lema de React Native es “aprender una vez, escribir en cualquier lugar” y no “escribir una vez, correr en cualquier lugar”.

Si te preocupan los errores, no invertiría tiempo en React Native. Es un sistema que funciona bien hasta que te encuentras con un error de Apple o te encuentras con ganas de hacer algo que el marco no admite. Si tiene errores en ese nivel, corregirlos requiere mucho tiempo.

Mi recomendación sería simplemente corregir los errores que tiene en la aplicación existente. Refactorice las piezas o si es necesario.

Si tiene errores, puede haber un problema en la aplicación nativa de reacción también. Mi sugerencia es tratar de resolver estos errores. No es necesario invertir más tiempo y dinero en pasar de ser rápido a ser nativo.

Si no puede corregir los errores, hay algunas empresas que realizan pruebas a un precio asequible. He visto tal oferta. Puede probar su aplicación de forma gratuita y también obtener valiosas sugerencias de los expertos.

Creo que deberías volver a implementar la aplicación en react native. Los entornos son lo suficientemente diferentes que un puerto de Swift para reaccionar no tiene sentido.