ReactJS: é uma biblioteca JavaScript que suporta front-end e servidor. É uma biblioteca usada popularmente, que se concentra no desenvolvimento de interfaces de usuário (UI) para aplicativos móveis e baseados na web. Desenvolvido pelo Facebook, é baseado na linguagem JavaScript e, portanto, também é sinônimo de ReactJS.

Etapas para criar um aplicativo React:

  • Etapa 1: crie um aplicativo React usando o seguinte comando:

    npx create-react-app react-demo
  • Etapa 2: depois de criar sua pasta de projeto, por exemplo, react-demo, vá até ela usando o seguinte comando:

    cd react-demo

Estrutura do projeto: terá a seguinte aparência.

import React from "react";
import logo from "./logo.svg";
import "./App.css";
  
function App() {
  return (
    <div className="App">
      <header className="App-header">
        <img src={logo} className="App-logo" alt="logo" />
        <p>ReactJS Demo Application</p>
  
      </header>
    </div>
  );
}
  
export default App;

Etapa para executar o aplicativo: execute o aplicativo usando o seguinte comando do diretório raiz do projeto:

npm start

Resultado: agora abra seu navegador e vá para http: // localhost: 3000 /, você verá o seguinte resultado

React Native: React Native é uma estrutura móvel de plataforma cruzada que usa a estrutura ReactJS. Como o nome sugere, ele é usado principalmente para desenvolver aplicativos móveis “nativos” (como Windows, iOS e Android). Também desenvolvido pelo Facebook, a principal vantagem do React Native é que ele permite que os desenvolvedores criem aplicativos móveis em várias plataformas diferentes sem comprometer a experiência do usuário final.

Etapas para criar um aplicativo nativo React:

  • Etapa 1: Abra seu terminal e instale o expo-cli com o seguinte comando.

    npm install -g expo-cli
  • Etapa 2: Agora crie um projeto com o seguinte comando.

    expo init react-native-demo
  • Etapa 3: agora vá para a pasta do projeto, ou seja, react-native-demo

    cd react-native-demo

Estrutura do projeto: terá a seguinte aparência.

import React from "react";
import { StyleSheet, Text, View } from "react-native";
  
export default function App() {
  return (
    <View style={styles.container}>
      <Text style={styles.header}>React Native Demo Application</Text>
    </View>
  );
}
  
const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: "#fff",
    alignItems: "center",
    justifyContent: "center",
  },
  header: {
    color: "#006600",
    fontSize: 22,
    fontWeight: "700",
  },
});

Etapa para executar o aplicativo: Inicie o servidor usando o seguinte comando.

expo start

Saída:

Diferenças entre React e React Native:

CategoriaReactJSReact Native
DefiniçãoUma biblioteca JavaScript, amplamente usada para desenvolver a interface do usuário.Uma estrutura móvel de plataforma cruzada usada para desenvolver aplicativos móveis nativos.
PlataformaUma vez que é principalmente usado para navegadores da web, pode ser executado facilmente em todas as plataformas.Uma vez que é usado para aplicativos nativos, leva uma quantidade suficiente de esforço do desenvolvedor para ser customizado e executado em todas as plataformas.
Interface de usuárioReactJS renderiza tags HTML em sua interface de usuário. Os componentes do React podem incluir tags HTML simples.O React Native renderiza JSX em sua interface de usuário. O React Native oferece suporte a tags JSX específicas que são usadas.
EstiloReactJS usa Cascading Style Sheets (CSS).O React Native usa um objeto de folha de estilo (objeto javascript).
RenderizaçãoReactJS usa VirtualDOM, uma ferramenta que permite uma fácil interação com elementos DOM.O React Native usa amplamente APIs nativas.
NavegaçãoO ReactJS usa o roteador React para permitir que os usuários visitem diferentes páginas da web.O React Native usa sua biblioteca interna do Navigator para permitir que os usuários visitem telas diferentes.
Suporte a biblioteca externaReactJS oferece suporte a pacotes de terceiros, mas não possui suporte de biblioteca nativa.O React Native não possui suporte para bibliotecas nativas e pacotes de terceiros.
AnimaçãoComo o ReactJS se concentra na IU, ele requer animações, que podem ser facilmente adicionadas usando CSS.Para incorporar animações no React Native, ele usa uma API animada.
SegurançaPossui segurança comparativamente maior.Possui segurança comparativamente mais baixa.
UsosÉ amplamente utilizado para desenvolver uma interface de usuário dinâmica para aplicativos da web.É usado para desenvolver verdadeiros aplicativos móveis nativos.
FormuláriosFacebook, Netflix, Medium, UdemyUber Eats, Tesla