Desenvolvido por | Facebook , Instagram e comunidade |
---|---|
Primeira versão | 2013 |
Última versão | 17.0.2 (22 de março de 2021) |
Depósito | https://github.com/facebook/react |
Garantia da Qualidade | Integração contínua |
Escrito em | Javascript |
Sistema operacional | Multi plataforma |
Modelo | Biblioteca JavaScript |
Licença | Licença MIT |
Local na rede Internet | reactjs.com |
React (também chamado de React.js ou ReactJS ) é uma biblioteca JavaScript gratuita desenvolvida pelo Facebook desde 2013 . O objetivo principal desta biblioteca é facilitar a criação de uma aplicação web de página única, através da criação de componentes dependentes de estado e gerando uma página HTML (ou parte)a cada mudança de estado.
React é uma biblioteca que gerencia apenas a interface da aplicação, vista como a view no modelo MVC . Portanto, ele pode ser usado com outra biblioteca ou uma estrutura MVC como AngularJS . A biblioteca se destaca de seus concorrentes pela flexibilidade e performance, trabalhando com um DOM virtual e só atualizando a renderização no navegador quando necessário.
A biblioteca é usada pela Netflix (lado do servidor apenas do25 de outubro de 2017para ganhar 50% de desempenho), Yahoo , Airbnb , Sony , Atlassian e também pelas equipes do Facebook , aplicando dogfooding na rede social de mesmo nome, Instagram ou WhatsApp . No final de 2015, o WordPress.com anunciou o Gutenberg, uma interface para editores de sites WordPress, desenvolvida em JavaScript com Node.js e React.
O React foi criado por Jordan Walke, engenheiro da empresa Facebook no final de 2011 . Pete Hunt, engenheiro que trabalha no Instagram, está interessado na biblioteca e auxilia Walke a remover as partes dependentes do Facebook. Isso permite que o React seja lançado sob a licença Apache 2.0 em29 de maio de 2013. O React desenha o XHP (in) , também desenvolvido pelo Facebook como uma biblioteca, permitindo a inclusão de HTML no PHP .
Dentro outubro de 2014, a versão 0.12.0 é lançada sob a licença BSD modificada , com uma nota de PATENTES associada, permitindo o uso das patentes do Facebook associadas ao React. No entanto, a licença BSD é atualizada paraabril de 2015, com a versão 0.13.1, para evitar confusão.
O 26 de setembro de 2017, React 16.0.0 foi lançado sob a licença do MIT . Essa alteração também se aplica à versão 15.x com React 15.6.2.
O React foi projetado como uma biblioteca, não uma estrutura MVC , como seus concorrentes podem ser. Assim, o React incentiva a criação de componentes reutilizáveis, com dados de entrada, que podem mudar com o tempo.
Além disso, o React não usa um sistema de modelos e só funciona com JavaScript , permitindo o encapsulamento completo do componente em uma única classe. Para facilitar a escrita da view, a equipe inicial do Facebook desenvolveu uma linguagem, JSX, que permite gerar objetos JavaScript com uma notação semelhante ao HTML.
Um DOM Virtual é uma representação do DOM em JavaScript . Em vez de gerar o próprio DOM como uma linguagem de modelos, ou seja, em vez de dialogar com as APIs do navegador para construir o DOM, geramos apenas uma estrutura em árvore de objetos JavaScript na memória.
Em 2015, o React Native fez sua aparição. Este framework é baseado no React e ainda permite que você crie aplicativos Android e iOS de "plataforma cruzada" em Javascript .