Executando verificação de segurança...
1

Você ja leu a documentação do React de cabo a rabo? Eu recomendo!

Serio mesmo, ela explica muito bem sobre o funcionamento, te faz entender o porquê das coisas, ao invés de só fazer.

Mas respondendo sua pergunta, o useEffect não é vilão, na verdade ele é necessário muitas vezes.

Carregando publicação patrocinada...
1

E concordo também que o useEffect não é vilão, ele é necessário para side effects reais.
O ponto não é demonizar o hook, e sim o uso excessivo e inadequado dele como ferramenta genérica de controle de fluxo.
O que tem acontecido recentemente ( e essa é minha experiência ) é uma enxurrada de código ( principalmente gerado por IA ) que:
usa useEffect para derivar estado
sincronizar props com state
reagir a mudanças que poderiam ser resolvidas no render

Isso gera:
renders intermediários desnecessários
cascata de efeitos
mais complexidade e menos previsibilidade

Ou seja, o problema não é o useEffect em si, mas o default mental model de “quando algo muda, usa um effect”, que vai contra o modelo declarativo do React