O React Native é a framework híbrida mais comentada atualmente, baseado na Framework React do Facebook, a ferramenta possui uma série de recursos avançados como:

  • Geração de aplicativos nativos através de código híbrido;
  • Desempenho superior às outras frameworks híbridas;
  • Live reload;
  • Utilização de plugins;
  • Integração com código nativo;
  • Desenvolvimento utilizando componentes.

Veremos a seguir a fundo alguns destes recursos:

Desenvolvimento utilizando componentes

ReactNative1

O React Native trabalha com componentes, todo o código é estruturado e criado focando no layout. Cada uma das nossas telas é um componente que possui subcomponentes (como o View e o TextInput) que são exibidos na tela através do método render().

Cada um desses componentes possui métodos próprios de acordo com as necessidades de cada componente, o componente TextInput por exemplo possui o método onTextChange() que é acionado toda vez que o usuário digita no campo. É possível também criar seus próprios componentes, estendendo os componentes padrões, a vantagem de criar novos componentes é que você pode por exemplo criar um campo de texto customizado, ou com funções mais inteligentes.

Também existem inúmeros componentes prontos criados por usuários e disponíveis na internet através de plugins.

Geração de código nativo

ReactNative02

Um dos maiores problemas dos frameworks híbridas atuais é que geralmente o código gerado roda em um navegador encapsulado dentro de um aplicativo.

A desvantagem desta abordagem é que o navegador é naturalmente mais lento do que o código nativo, fazendo assim com que os aplicativos híbridos tenham um desempenho inferior aos aplicativos nativos.

O React Native possui uma outra abordagem para resolver este problema: o desenvolvedor programa em código híbrido (utilizando Javascript através do React e uma linguagem XML equivalente ao HTML).

Além disso, quando a framework gera os aplicativos Android e iOS, ela converte este código híbrido para código nativo.

Isto faz com que o React Native seja capaz de gerar aplicativos com desempenho similar aos aplicativos gerados utilizando as ferramentas híbridas, tornando-o uma das ferramentas híbridas com maior desempenho.

Live reload

Outro problema no desenvolvimento nativo é o teste e compilação dos aplicativos, geralmente o processo é demorado, pois é necessário compilar o projeto, processo que pode levar até 5 minutos e só então enviar o app para um emulador ou dispositivo.

Além disso, o React Native utiliza uma abordagem chamada Live Reload para resolver este problema, através de uma ferramenta chamada Expo.

Toda alteração de código realizada, é enviada para o servidor em tempo real e o aplicativo é atualizado automaticamente no celular.

Confira nosso serviço de Desenvolvimento de aplicativos. 🙂

Author

Renato Probst

Desenvolvedor e apaixonado por tecnologia mobile, Renato Probst divide seu tempo ministrando treinamentos de desenvolvimento de apps em grandes empresas e liderando a equipe de desenvolvimento da RockApps.