React Native ou desenvolvimento nativo: qual escolher

A escolha muda custo, prazo e manutenção. Para a maioria dos aplicativos de negócio, uma base de código só resolve.

Atualizado em por InnovarteTech

React Native gera aplicativos de iOS e Android a partir de uma única base de código em JavaScript ou TypeScript. Desenvolvimento nativo usa duas bases separadas, Swift para iOS e Kotlin para Android. React Native costuma ser a melhor escolha para aplicativos de negócio; nativo vence em jogos, processamento pesado e uso avançado de hardware.

Comparação direta

CritérioReact NativeNativo (Swift e Kotlin)
Base de códigoUma para iOS e AndroidDuas, uma por plataforma
EquipeUm timeDois times ou um time com as duas especialidades
Prazo da primeira versãoMenor, porque o trabalho não é duplicadoMaior
Desempenho em telas comunsEquivalente para o usuárioReferência
Recursos novos do sistemaChegam depois, via bibliotecaDisponíveis no lançamento
Jogos e gráficos pesadosNão é o caso de uso idealMelhor escolha

Quando React Native é a escolha certa

  • Aplicativos de cadastro, agenda, pedidos, pagamentos e acompanhamento.
  • Produtos que precisam sair em iOS e Android ao mesmo tempo.
  • Equipes pequenas, em que manter duas bases de código dobraria o custo.
  • Empresas que já têm um site em React e querem reaproveitar conhecimento.

Quando ir de nativo

  • Jogos e aplicativos com gráficos em tempo real.
  • Uso intenso de Bluetooth, sensores, câmera com processamento de imagem ou execução longa em segundo plano.
  • Aplicativos que dependem de recursos lançados na versão mais recente do sistema.
  • Empresas que já têm times separados de iOS e Android.

O que a InnovarteTech usa

A InnovarteTech desenvolve aplicativos para iOS e Android com React Native. Quando um recurso exige código nativo, ele é escrito como módulo dentro do mesmo projeto, sem abandonar a base compartilhada.

Perguntas frequentes

Aplicativo em React Native é mais lento?

Em telas comuns de negócio a diferença não é perceptível para o usuário. A diferença aparece em jogos, animações muito pesadas e processamento intenso no aparelho.

Dá para começar em React Native e migrar para nativo depois?

Dá, mas migrar significa reescrever. O mais comum é manter React Native e escrever em código nativo só os trechos que precisam.

Continue lendo

Vamos conversar sobre o seu projeto?

Resposta em até 24 horas, direto com os fundadores.

Falar com a Innovarte