Iniciando estudos com React, primeiras impressões – pt. 1

<desabafo>

Pra que simplificar, se pudemos complicar? Vamos criar uma ferramenta que, pra que possam desenvolver algo, antes, tenham que instalar dezenas de pacotes para funcionar, várias dependências, compiladores e bibliotecas juntas, ah, e o melhor: vamos criar ao mesmo tempo, zilhões destas ferramentas e as atualizar diariamente.
E assim nasceram React, Vue, Ember, Angular, Polymer, Riot e por ai vai…

Sim, foi isso que eu pensei há um tempo atrás quando estava prestes a escolher onde focaria meus estudos no mundo JS, falando em frameworks e libs.

</desabafo>

O desabafo acima é um sintoma normal de quando você está saindo da sua zona de conforto.

A escolha

Sempre gostei de JavaScript, na verdade foi uma das primeiras linguagens que tive contato quando comecei a programar no início da minha carreira, e confesso ter ficado bastante feliz em ver sua ascensão nos últimos anos, principalmente no seu lado server-side (afinal sou desenvolvedor back-end). Sendo assim, estando familiarizado na linguagem, o passo adiante seria em algum framework ou biblioteca poderosa, e já faz um tempo que venho querendo meter as caras nisso!
Não é lá tão fácil escolher, uma vez que temos, dentre os principais, uma boa variedade e cada um com suas particularidades, seus prós e contras. Pois bem, confesso que por um tempo estive oscilando entre React e Vue, pesquisei, lí, assisti a tutoriais e fiquei um tempo ponderando.

No entanto, nos últimos anos eu tenho trabalhado quase que 100% dos meus projetos com WordPress, desenvolvendo plugins para soluções específicas principalmente com WooCommerce, temas e projetos sob-medida para os mais diversos nichos.

E o que isso tem haver?

Tem que a estrutura do WP vem sendo migrada para JS e muita coisa estão desenvolvendo com React, na plataforma .com, por exemplo, reescreveram toda a aplicação do admin com estas tecnologias, e no .org estão, a partir do Gutenberg, realizando o mesmo. Logo, como pretendo continuar desenvolvendo com WordPress, vou me adaptar ao que ele vem recebendo.

Então somando a vontade de aprender algo novo com a atualização de uma ferramenta que trabalho, bora aprender React!

Com isto, fui atrás de material na internet, e tem MUITO! Principalmente em inglês, e o melhor: de graça! No entanto decidi que compraria um curso online, pois diante minha rotina agitada, é o melhor que se encaixaria, por ter fluxo, sanar dúvidas e etc…

O investimento foi feito no curso React Ninja, no Udemy, do Fernando Daciuk.
Eu já havia escutado falar muito bem do Fernando, de sua didática e do curso, e após iniciar as primeiras aulas isto só se confirmou ainda mais, é show! #noads #apenassinceridade hahaha

As primeiras impressões

Bom, acho que uma das primeiras coisas que estranhamos é ver HTML dentro do JS, isso, pra quem está acostumado com esta separação trás um pouco de desconforto, mas é apenas no início. Depois que se acostuma com o JSX, que beeeem resumidamente falando, é o JS com HTML, você entende que é uma novo paradigma, e conforme vai lendo e entendendo mais sobre, vai fazendo sentido.

No começo, pelo menos aconteceu comigo, é comum ficar pensando “caraca, por que complicam tanto as coisas?” quando vemos que, apenas pra começar o seu setup básico de dev, tem que instalar diversos pacotes, o mais básico é o npm, depois node, webpack, webpack dev e webpack dev server, babel… e isto só pro básico!

Óbvio que diante tanta informação você se questiona sobre cada aspecto, mas conforme vai entendendo a estrutura da ferramenta, e como funciona cada parte, você começa a entender tanto o todo quanto cada um separado e o motivo de estarem ali.

As coisas se encaixam

Após as crises existenciais sobre a montanha de informações, pacotes, dependências e etc, tudo começa a fazer sentido, as coisas vão se encaixando e você começa a se empolgar com o leque de possibilidades que terá com os benefícios da ferramenta. Principalmente em estar com uma tecnologia de ponta, super em alta no mercado e com uma demanda de profissionais absurda, e também pela questão do poder da componentização e reutilização, o modo React de pensar, nova e diferente perspectiva de desenvolvimento, linguagem funcional e demais “virtudes” técnicas.

Ainda estou no começo do aprendizado, consolidando bem os alicerces do conhecimento de cada etapa e entendendo cada uma delas. Já começo a deslumbrar aqui 2 projetos iniciais para por em prática daqui algumas semanas, conforme for me aprofundando, um apenas com React, e o outro um plugin para WordPress, muito provavelmente serão projetos pessoais, para aprendizado, mas que depois de prontos, já posso pensar, obviamente, em projetos de clientes utilizando a biblioteca.

Bom, esta é a primeira parte dos textos de minha saga React, pretendo documentar meu aprendizado, compartilhar as experiências (os sentimentos também haha) e que isso possa lhe ajudar de alguma forma. Nos próximos pretendo ir mais a fundo na parte técnica do aprendizado, desta maneira aprenderemos juntos!

Até o próximo!