javascript react

5 motivos para aprender React

Compartilhe os ensinamentos do mestre

5 motivos para aprender React

1.Curva de aprendizado suave

React é uma lib muito simples e leve que foca na camada da view. Não é uma besta de mil cabeças que faz de tudo um pouco como Angular ou Ember. Obviamente Angular tem suas vantagens também mas o fato de ele fazer tanta coisa torna a curva de aprendizado dele muito mais pesada. Por isso aprender react é tão fácil.

Qualquer desenvolvedor javascript consegue entender o básico do React e começar a desenvolver uma aplicação fodástica em uns poucos dias de leitura de tutoriais(na verdade dependendo do nível de cafeína do cidadão, em algumas horas ele já está pregando fogo).

“Pensar em React” pode ser um pouco diferente do que você está acostumado, mas com um pouco de experiência se torna mais natural, além disso é sempre interessante ter uma nova perspectiva de desenvolvimento.

 2. Componentes reutilizáveis

O react tem uma estrutura baseada em componentes. Os componentes são como suas pecinhas de leg0. Você começa criando pequenos componentes como botões, dropdowns, etc. Então você pode combinar esses componente para criar componentes maiores como formulários, menus,etc. E por aí vai até você ter telas inteiras formadas pela composição de componentes.

Cada componente decide como deve ser renderizado e tem sua própria lógica interna. Esse abordagem traz resultados incríveis. Primeiro porque você vai ter um look and feel consistente no seu aplicativo, segundo como seus componentes são desacoplados uns dos outros fica mais fácil manter seu código conforme ele cresce, terceiro como seus componentes são unidades autônomas de código desenvolver seus aplicativo fica mais simples.

Veja um exemplo de biblioteca de componentes:

3. Renderização extremamente rápida

quando você cria uma aplicação web que possui um alto grau de interação com o usuário e muitas atualizações na tela, uma das coisas que você deve considerar são possíveis problemas de performance, além da complexidade em refletir o estado da aplicação na tela. Apesar de hoje em dia os engines de javascript serem rápios o suficiente para lidar com esse tipo de complexidade, manipulações no DOM ainda são relativamente lentas. Atualizações no DOM continua sendo um gargalo de quando se trata de performance em aplicações WEB. O React está tentando resolver esse problema usando uma abstração chamada  Virtual DOM. O Virtual DOM é um mapa do DOM mantido na memória(na verdade ele é bem mais que isso, mas por hora essa comparação está ok). Qualquer mudança no estado da aplicação primeiro é refletida no Virtual DOM, então um algoritmo extremamente eficiente descobre as diferenças entre o estado anterior e a atual, calcula a forma mais eficaz(a que exigir menos updates no DOM real) de fazer essas atualizações e só então aplica essas mudanças.Garantindo o menor tempo possível de escrita/leitura. Esse é o segredo por trás da velocidade do React.

4 .Abstração clara

Um dos motivos que torna aprender react tão simples é o fato de ele ter um excelente grau de abstração que esconde toda a complexidade interna de quem usa a biblioteca.

Vamos comparar isso com angular: por que diabos você deveria precisar aprender sobre o “Ciclo  digestivo( digest cycle)” do componente? Esse tipo de detalhe deveria ser encapsulado no funcionamento interno do framework para prover um nível melhor de abstração. Quando se trata do Reactjs você precisa se focar apenas em entender o ciclo de vida do componentes, estados e propriedades. Se você dominar bem esses fundamentos você consegue fazer qualquer coisa como o react.

O React não dita nenhum padrão ou arquitetura como MVC/MVVM. Ele cuida apenas da camada de views e deixa você livre para escolher a arquitetura que mais se encaixa para sua aplicação. Apesar disso existe uma arquitetura chamada FLUX que encaixa como uma luva como o react.

5.React native

aprender react tem um bônus:O React Native. O React não é uma biblioteca do tipo ‘aprenda uma vez e rode em qualquer lugar’ como os criadores dizem ser. Ela é uma biblioteca do tipo ‘aprenda uma vez e escreva em qualquer plataforma’. O que é uma vantagem e tanto já que você pode criar aplicativos nativos para Android e IOs usando o React Native. Ainda que o código que você vai escrever não seja exatamente o mesmo, você vai poder usar a mesma metodologia arquitetura e tudo que já aprendeu para desenvolver aplicativos nativos.