14 pontos por GN⁺ 2023-08-16 | 21 comentários | Compartilhar no WhatsApp
  • Uma análise crítica do React, biblioteca JavaScript amplamente usada para construir interfaces de usuário, junto com sugestões de alternativas.
  • O React é criticado como ultrapassado, com apontamentos de falta de desempenho e adaptabilidade.
  • O autor afirma que o ecossistema do React é desnecessariamente grande e que os React hooks já estão ultrapassados.
  • Defende-se que não há necessidade de focar em renderização e escalabilidade no frontend.
  • Argumenta-se que a renderização no lado do servidor já não é mais algo único e que o data binding bidirecional não é uma má ideia.
  • Afirma-se que o estilo é mais simples do que no React e que outros frameworks não são difíceis de aprender.
  • Sustenta-se que as alternativas ao React não são apenas algo "novo e brilhante", mas maduras e com desempenho melhor.
  • Recomenda-se experimentar outros frameworks como Svelte, Vue, Solid, Fresh, Astro, Preact, Qwik.
  • O favorito pessoal do autor é o Svelte, que ele considera mais fácil de aprender e com melhor desempenho do que o React.
  • O Svelte é um compilador, e o código não utilizado é removido em tempo de build, gerando bundles menores.
  • SvelteKit, o meta-framework do Svelte, é variado e poderoso, permitindo conteúdo estático, renderização no servidor e deploy na edge.
  • O Vue oferece desempenho melhor que o React e uma abordagem mais centrada em UI, usando uma linguagem de templates mais próxima de HTML nativo do que JSX.
  • O Solid é uma versão do React com melhor desempenho, removendo complexidade, problemas de performance e boilerplate. Também oferece seu próprio meta-framework, o SolidStart.
  • O Fresh é um framework frontend com renderização no servidor construído sobre o Deno, com arquitetura de ilhas. Oferece JavaScript mínimo e carregamento rápido de conteúdo dinâmico.
  • O Astro é um gerador de sites estáticos de alto desempenho com recursos dinâmicos no lado do servidor. Por padrão, não usa JavaScript algum e é compatível com vários frameworks frontend.
  • O Preact é uma versão mais enxuta e rápida do React, tendo adquirido alguns recursos excelentes que o React não tem.
  • O Qwik apresenta uma nova abordagem, com código semelhante ao React renderizado no servidor, sendo uma boa escolha para projetos com muita interatividade.
  • Bibliotecas de web components como Lit, Stencil, Polymer são recomendadas para projetos que desejam reutilizar o mesmo componente em vários ambientes ou se preparar para mudanças de framework.
  • O autor sugere que a indústria de tecnologia pode dar outro salto na adoção tecnológica, saindo do React para algo novo.

21 comentários

 
linrise 2023-08-17

Este texto parece mesquinho, como se fosse um júnior mal-educado dizendo: “Veterano~ agora que o senhor não serve para muita coisa, já pode se aposentar, né?”

 
moderator 2023-08-17

Parece que a discussão sobre o artigo está ficando acalorada demais.
Por favor, confira o item sobre comentários em Como usar o site.

Por favor, conversem de forma educada e respeitosa.
Por favor, não ataquem diretamente o autor do texto.
Se houver uma objeção, escrevam apenas sobre esse conteúdo.

 
cosine20 2023-08-17

Pessoalmente, não gosto muito da ideia de uma linguagem como JS ser usada como linguagem de desenvolvimento de servidores.
Hoje em dia há bastante coisa baseada em TS, mas no fim das contas o resultado sai como JS mesmo... Tanto Python quanto JavaScript, do ponto de vista da linguagem, realmente não me agradam, mas parecem ser muito usados por causa da praticidade.
Dá uma sensação de democratização das linguagens.

 
roxie 2023-08-17

É meio chato ver que, como a Vercel se matou de tanto suar para construir isso, agora parece algo tão óbvio e sem importância.

 
secret3056 2023-08-16

Quando lembro da época da escola, escrevendo servlets infernais num editor que nem apontava erro de sintaxe, acabo ficando grato por tudo, seja React, Svelte ou qualquer outra coisa.....

 
bichi 2023-08-16

Dá para ver os pontos fortes e fracos do React quando se experimenta de tudo um pouco, mas dizer que React é bom, que JSX é um ponto forte e reagir negativamente a opiniões negativas sobre hooks parece algo quase religioso e cego.

 
alucard 2023-08-16

Eu escrevi que o ponto forte não era o JSX, e sim a "expressividade"... Quanto aos hooks, ao reler o texto original, confirmei que ele não criticava o padrão de hooks em si, mas apenas dizia que isso já não é mais exatamente um diferencial exclusivo do React. Com isso dá para concordar. Como a tradução ficou daquele jeito, acabei entendendo errado.
Então, você poderia escrever de forma mais específica qual é exatamente o "ponto forte" que você identificou?

 
bichi 2023-08-16

Vocês não acham mesmo que bibliotecas ou frameworks só têm vantagens e nenhuma desvantagem, né? Por acaso, enquanto usavam, nunca sentiram nenhuma desvantagem do React? Já que estão pedindo tanto para escrever sobre desvantagens, parece que nunca perceberam nenhuma, né? Sabem que falar em prós e contras significa que também existem prós, certo? Tem muitas vantagens, mas também muitas desvantagens. Uma delas eu li ontem, mas não sei o link: em Server Components, parece que só dá para usar context dentro de Server Components. Por causa disso, dizem que não dá para usar js-in-css. Como eu mesmo não testei, não posso dizer que isso é realmente uma desvantagem haha. Hooks? Eu realmente acho que foi uma ideia revolucionária. Mas agora, né, haha, existe o Signal, que é mais inteligente que o React e mais fácil de usar. Também está no texto principal.

 
alucard 2023-08-17

Sim kkk, gostei bastante.

 
cookiet 2023-08-16

Enquanto isso, ainda faltou o Angular, buááá

 
alucard 2023-08-16

Não concordo nem um pouco; no caso de JSX, ele é usado de propósito porque tem vantagens de expressividade em relação ao HTML.
E também fico me perguntando por que a opinião geral de que data binding bidirecional sempre foi uma má ideia de repente se inverteu...
O que seria, afinal, um ecossistema desnecessariamente grande? E dizer que hooks estão ultrapassados...
Pessoalmente, até duvido que isso tenha sido escrito por um programador de verdade.

 
kuroneko 2023-08-16

Acho que há bastante coisa aí que faz sentido. Ainda continuo usando React, mas...

 
[Este comentário foi ocultado.]
 
beingbook 2023-08-16

Parece forçado afirmar simplesmente que o desempenho é inferior sem explicar concretamente quais são os trade-offs técnicos envolvidos. Por exemplo, implementações de islands que não sejam React nem permitem coisas como carregamento com base em prioridade.

 
laracool 2023-08-16

A menos que apareça algo diferente no framework de governo eletrônico... o React inevitavelmente vai continuar muito forte na Coreia.

 
[Este comentário foi ocultado.]
 
bohaesoju 2023-08-16

Sei lá. Estão apresentando bibliotecas demais como alternativas ao React.
Acho que, considerando tudo de forma abrangente, deveriam destacar os pontos em que elas são superiores ao React.

 
tequila 2023-08-16

Vue e Nuxt são realmente muito bons, mas é uma pena que, no mercado nacional, o espaço deles seja pequeno. Svelte... está num estado em que nem dá para falar do espaço que ocupa (chorando)...

 
[Este comentário foi ocultado.]
 
bichi 2023-08-16

Verdade absoluta, dita 10.000 vezes

 
GN⁺ 2023-08-16
Opiniões do Hacker News
  • Alguns desenvolvedores preferem a linguagem de templates do Vue porque ela é mais próxima do HTML puro do que JSX e permite escrever condicionais e loops com facilidade em arquivos de template.
  • Para algumas pessoas, usar estruturas da linguagem como filter, map e reduce no React parece mais conveniente do que soluções alternativas.
  • Um desenvolvedor compartilha a experiência de ter saído do React para usar um frontend com renderização no lado do servidor e vanilla JS, e descobriu que isso é mais fácil de manter.
  • Algumas pessoas consideram Web Components superestimados, já que o DOM por si só já oferece uma forma confiável de integrar bibliotecas de terceiros ao React.
  • A popularidade do React é atribuída ao seu modelo de programação, e o JSX ainda é considerado uma das melhores formas de integrar diretamente a parte de UI de uma aplicação JS à parte em JS.
  • Do ponto de vista de negócios, seguir um padrão da indústria como o React facilita contratações e oferece um ecossistema maior, além de reduzir a necessidade de construir tudo do zero.
  • Os Hooks do React são vistos como uma grande melhoria em relação aos métodos de ciclo de vida dos componentes de classe, oferecendo um código mais limpo e poderoso.
  • Alguns desenvolvedores veem os componentes funcionais e os Hooks do React como um erro, julgando que isso torna a base de código menos fácil de manter e mais difícil de entender.
  • O React é considerado mais fundamental do que outros frameworks, promovendo uma transição de um paradigma imperativo para um mais funcional.
  • A citação de um artigo sobre quanto o Google pagou a Alex Russel para especificar Web Components é vista como tendenciosa por causa da concorrência direta entre Web Components e React.
  • Alguns desenvolvedores sentem que os programadores web perderam a capacidade de “fazer por conta própria” e de construir sistemas complexos de forma prática, e que frameworks como React frequentemente são usados em excesso.
  • O autor do artigo é criticado por não fornecer exemplos e por demonstrar falta de conhecimento ou entendimento sobre a história e as diferenças entre as soluções atuais.
  • Algumas pessoas concordam com a afirmação do artigo de que desenvolvedores não deveriam precisar se preocupar com desempenho de renderização, e acham questionável que o React exija o uso de recursos como useMemo e useCallback.
  • Algumas pessoas concordam com a afirmação do artigo de que desenvolvedores acabam se tornando apenas desenvolvedores React, sem conseguir buscar outras abordagens, e sentem que houve perda de compreensão de conceitos básicos de programação com a introdução de definições como componentes, estado e Hooks.