React: uma biblioteca para a web

Artigo

O tutor da EDIT. Lisboa e Development Business Architect & Mentor, Alexandre Marreiros, explora neste artigo de blog a biblioteca React e algumas das suas principais características. Se esta área te interessa, descobre mais aqui.

Aquilo a que chamamos hoje em dia de modern web tem inundado o mercado do trabalho e do recrutamento do desenvolvimento web com novas oportunidades, mas também com um grau de exigência acrescido, bem como um leque infinito de novas possibilidades.

O dia a dia do desenvolvimento baseado em tecnologias web recebeu novos chavões, como por exemplo, SPA, Service Worker, PWA, internal Routing, WebComponent, e uma infinidade de outras buzzwords. No âmbito das tendências do desenvolvimento Web começa-se finalmente a falar de algo que há muito sabemos: o JavaScript é incontornável no desenvolvimento, na Framework Web da atualidade.

Nunca na história do desenvolvimento baseado em tecnologias web foi possivel chegar tão além como nos dias de hoje, e nunca o mercado exigiu tanto que a excelência fosse implementada com mais rapidez. O Cloud Computing, a simplificação das plataformas de hosting numa logica Platform as a service, o Mobile Boom que vivemos e as velocidades de ligação, tornam ainda mais exigente o trabalho de quem desenvolve para a web.

Como resposta à contenda atual, têm vindo a ser criadas novas técnicas, metodologias e aceleradores de performance. Para tornar toda esta loucura sã e viável, permitindo que cheguemos mais além, diariamente a engenharia da web fornece-nos novos patterns, frameworks, bibliotecas e extensões.

Entre as “tecnologias” web que mais adeptos reúnem, temos:

  • Node.js
  • Angular
  • Vue.js
  • React

Sendo que o Node.js vem dar resposta à necessidade de automatização e server side development, recorrendo a tecnologias de JavaScript. As restantes apresentam soluções para Implementação de FrontEnd.

O Angular e o Vue.js apresentam soluções orientadas à construção de SPA’s (Singe Page Applications) cujo pattern poderá não ser o mais apropriado para algumas soluções. São frameworks incorpadas que reunem boas práticas na sua implementação base, e uma série de tools e extensões para simplificar a concretização dos nossos objetivos enquanto programadores.

O React, por outro lado, é uma biblioteca, sendo mais lightheight do ponto de vista de dimensão e muito centrado na velocidade e implementação do frontend das aplicações. Os seus patterns são bastante simples e giram em torno do conceito de WebComponent, que podemos definir de forma simplista como um pequeno desenvolvimento de frontend autónomo, que reúne todo o look and feel de determinada funcionalidade, sendo reutilizável cross web (a lembrar os widgets que tínhamos no Windows no passado).

Uma aplicação React não tem obrigatoriamente de seguir uma abordagem SPA, podendo recorrer ou não a linguagens strong type.

Pela sua flexibilidade, rapidez e força da comunidade, o React é talvez das opções apresentadas a que reúne mais amores e ódios. Sendo também das mais simples e ao mesmo tempo complexas de adotar.

Na sua génese, o React é bastante simples e vai de encontro aos padrões de programação da web que utilizamos há mais de 20 anos. É a que exige aparentemente uma menor senioridade e conhecimento prático de engenharia de software para adoção. No entanto, por ser tão maleável, o conhecimento profundo da tecnologia e dos cânones de desenvolvimento web é por vezes descorado, o que leva a maus desenvolvimentos e muitas noites sem dormir de developers, managers, marketeers e marcas.

Para conseguirmos ir um pouco mais além e dar uma resposta bold aos desafios atuais, temos de ir para lá do webcomponent básico e uso da biblioteca, e é nesse local que o ecosistema React passa a ter uma diferente forma (always conected, inheritance of components usaged, coupled components, app state, Component state, Redux, Hoocks, events, virtual DOM).

Para além dos diferentes chavões que a complexidade descrita nos traz, a ausência de regras nativas da biblioteca leva a uma necessidade acrescida de organização que, convenhamos, nem sempre por questões de tempo, perfil, desafio é fácil acomodar em projeto.

É por essa razão que antes de começarmos a utilizar o React como base de todos os nossos desenvolvimentos, devemos primeiro entendê-lo como biblioteca e tecnologia, para além do simples Helho World.

Tendo tido o previlégio de ter estudado e trabalhado ativamente como developer e arquiteto com as todas as Modern Web Technologies referidas, o React não foi a mais rápida de adotar e usar em pleno.

É uma biblioteca muito interessante, de grade performance e que permite elevar o nível da nossa prestação enquanto programadores. Não é uma solução para todos os problemas, mas uma excelente opção para muitos dos desafios da Web dos nossos dias.

Com grande demanda no mercado, e uma comunidade muito ativa, o React é uma arma essencial para qualquer WebDeveloper. Contudo, para um “casamento feliz”, mais do que apenas a prática, o conhecimento das nuances é essencial.

Alguns exemplos básicos de React podem ser consultados e experimentados na página https://reactjs.org/community/examples.html.


Partilhar:

    Fale connosco

    Interesses

      Subscrever Newsletter

      Interesses