GABRIEL CONCEIÇÃO
O Facebook tinha um problema. Precisava de criar grandes aplicações em que a informação se altera constantemente ao longo do tempo. È algo bem possível de se fazer, mas é bem difícil de manter. A performance das aplicações é muito importante e sabemos que hoje usamos e abusamos do Javascript para criar interfaces dinânimas, divertidas e inovadoras. Estas interfaces usam demasiada memória dos dispositivos, o que faz com que a experiência do utilizador não seja a melhor. E porque não utilizar os recursos do servidor para libertar os recursos dos dispositivos? É algo possível com React. Esta biblioteca usa o conceito já anteriormente criado de Dom Virtual.

O que é a Dom Virtual?

A Dom Virtual pouco difere da Dom real, no entanto esta encontra-se em memória e pode ser processada no lado do cliente ou no lado do servidor e permite assim uma maior velocidade de processamento/manipulação da dom. Os elementos são convertidos para elementos virtuais, são aplicados na Dom Virtual, são aplicadas as alterações e em seguida, retornado o novo elemento atualizado para ser aplicado na Dom real.

Renderização no lado do cliente ou no servidor?

Será você que decide, se pretende que o servidor faça tudo, processe o seu código de cliente e retorne o resultado, poderá usar o Redux por exemplo, que é uma versão melhorada e talvez mais usada do Alt. Acho que é a parte fantástica desta biblioteca. Pode libertar praticamente todo o processamento no lado de cliente, aumentando assim a velocidade de manipulação da Dom. O utilizador agradece ( será tudo mais rápido ). No entanto, está a saturar o servidor. Caso pretenda manter o processamento no lado do cliente, só precisa do React com a configuração básica.

Será tudo atualizado quando a informação altera

Quando é que precisamos de fazer alterações na Dom? É frequente alterar a Dom quando temos novas informações e pretendemos apresentar com o mesmo layout. Para isso, usamos funções do tipo setIntervals ou usamos bibliotecas como socket.io, no entanto toda a lógica de alteração de informação vai ser executada no lado do cliente. Com o React, é possível transferir para o lado do servidor todo esse processamento e a própria biblioteca já foi desenhada a tentar respeitar esta ideia. Contém funções internamente para detectar quando a informação foi alterada e assim executar o código correspondente. Deverá estudar o funcionamento dos componentes. Cada componente é uma parte da aplicação. Imagine o botão Gosto do Facebook. Pode ser um componente. Como se encontra separado de certa forma de todo o código do resto da aplicação, será fácil encontrar o código fonte num projeto de trabalho, é de certa forma independente, o que permite que caso falhe, por algum motivo que nem o Chuck Norris sabe, apenas ficará indisponível esta funcionalidade de toda a aplicação. Estes componentes contém States que lhe permitem alterar a informação. Todos os States podem ser armazenados numa Store, permitindo ao React comportar-se como uma espécie de History, em que todos os dados já renderizados podem ser representados novamente sem ter que fazer um novo pedido ao servidor. Poderá também usar o Webpack que lhe permite criar um simples pacote de toda a aplicação, com todas as configurações, ambientes de desenvolvimento e executa tudo com um simples npm run! Página oficial: https://facebook.github.io/react
October 2, 2016, 10:36 pm

Comments

Latest posts

EU: Apple Changed Policy to allow developers communicate with custom...
August 9, 2024, 01:34 pm
Crowdstrike is a software used in many services running windows as a...
July 19, 2024, 02:34 pm
With DNF types we can use union and intersection types at some class...
July 12, 2024, 02:22 pm

With an interactive dashboard from "Center for systems Cience and E...

March 2, 2020, 11:22 pm
Quando um computador avaria e se encontra coberto pela garantia, dev...
16-02-2020 18:37
One day, I was driving in Porto, listening to the radio and thinking...
This javascript library simulates the hover effect on mobile devices...

Still using Windows XP? Sure you already experiencing some compatib...

June 21, 2019, 7:29 am

With the native XMLHttpRequest Object we can make requests to some ...

April 4, 2019, 07:58 am

Os cookies não permitem armazenar mais do que 4096 bytes de ...

April 1, 2019, 11:58 am

No Ebay podemos encontrar vários cartões microSD com ...

November 24, 2018, 10:12 pm
A Black Friday está quase aí. É já no dia 23 de Novembro que as ...
October 21, 2018, 10:00 pm

Google isn't using the keywords meta tag in your algorithm.

Happy Programmers' Day! ...
September 13, 2018, 10:13 pm
Devido ao novo regulamento de proteção de dados da EU, que exige a t...
September 12, 2018, 8:15 pm

A Microsoft acaba de comprar o GitHub, a maior plataforma de reposi...

June 7, 2018, 1:11 am
Microsoft doesn't released the Spring Creators update due to higher pe...
April 12, 2018, 1:50 am
The new version of Microsoft Office - 2019 will only work on Windows 1...
April 5, 2018, 1:50 pm
The new Windows Update will be automatically downloaded from Windows ...
April 5, 2018, 1:37 pm
A Black Friday está quase aí à porta, no entanto, é preciso estar ...
November 22, 2017, 8:01 am
O Outlook.com está neste momento com problemas a enviar emails. Se te...
September 18, 2017, 2:22 pm
Erro a enviar ficheiro em Wordpress: "File is empty. Please upload som...
September 4, 2017, 08:12 am
Bem-vindo ao desastre da perda de dados. Já deve ter sofrido como eu....
February 8, 2017, 02:25 am
Se instalar o Windows 10 de raiz neste computador e aplicar os drivers...
October 24, 2016, 2:04 am
Nem sempre pretendemos criar um serviço de hosting para um site. Pode...
September 4, 2016, 11:29 pm

Os processadores Intel BayTrail, uma versão melhorada para r...

August 16, 2016, 02:39 am