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

Opa, obrigado pelo comentário, Filipe!

Uma honta ter você aqui hahahaha.

Sim, estamos falando sobre a camada de apresentação em si, o que gera a nossa UI.

Se olharmos de forma separada, como você fez, podemos considerar a parte "lógica" como imperativa. Mas - na minha interpretação (que não significa nada hahahaha) - se olharmos o conjunto da obra em si (o React como um todo) podemos considerar que até mesmo o setIsLoading(true); é declarativo, pois o simples fato de executarmos essa linha de código evita que tenhamos que fazer outras ações de maneira imperativa:

button.disabled = true;
button.textContent = 'Loading...';

No outro exemplo que você deu de fazer uma chamada fetch, o React hoje possui um mecanismo próprio chamado createResource para lidar com a assincronicidade da chamada e não travar o UI do usuário enquanto aguarda pela resposta.

Para nós, basta que utilizemos o fetch, mas por trás dos panos o React abstrai lógicas que teríamos que fazer de maneira imperativa.

Novamente, é apenas a minha interpretação e a forma que eu vejo o React (o todo), mas a camada de apresentação definitivamente é declarativa.

Carregando publicação patrocinada...
2

Show! Então imagino que estamos bem alinhados e concordo 100% que a camada de apresentação é definitivamente declarativa (apesar de que lá também vejo que é possível colocar código imperativo) 🤝

[edit]

consertei o texto conforme sugestão do jgamaralv

1
2
2

Acredito tambem que React como um todo é de forma delcarativa. Esse repositorio explica a arquitetura fiber por traz do React:

https://github.com/acdlite/react-fiber-architecture

Aqui um outro otimo artigo sobre isso:

https://blog.logrocket.com/deep-dive-react-fiber/

Aqui um video bem deep sobre isso:
https://youtu.be/ZCuYPiUIONs

video resumo:
https://youtu.be/gsvHmZ3hXjo

Esse cara aqui deu uma palestra muito top em um meetup aqui em Berlin:
Teoria:
https://youtu.be/rKk4XJYzSQA
Inspecionando:
https://youtu.be/Zan16X8VvGM

Acrescentei referencias sobre react fiber architecture para ver como nosso codigo se torna mais declarativo pois por baixo do panos muitas coisas acontecem para a magica funcionar :)

1