O que um Web App faz?
Camadas de Ecossistema de um Web APP (Pra vida toda)
1. Componentes:
Parte visual, costumizavel e REUTILIZAVEL
Objetivo: Diminui complexidade e permite reaproveitar codigos ja feitos.
Tudo o que é padrão, ou seja, repetitivo, é bom utilizar o componente
"Pedaços da sua tela que você trabalha de forma isolada e reutilizavel"
Peça de lego.
--------------------------------------------------------
2. Gerenciamento de Estado (valores e tipos): SINCRONIA
Exemplo: é o controle do que está dentro do carrinho ou não em um site de vendas.
Exemplo meu: UseState do React fazia isso com o usuario que logou no meu site.
Dá pra fazer lotando de if, mas não é bom.
Ferramentas (bibliotecas) da vida real para gerenciamento de estado: Flux, Reuxx, Context API, Recoil, Storeon, VUEX, NGRX, NGXS
--------------------------------------------------------
3. Roteamento:
Responsavel epla forma de trocar de URL sem Recarregar a página,trocando só os componentes que são mostrados na tela.
exemplo: meuapp/login ; meuapp/home
Bibliotecas que cuidam disso: History API(cheio de if ainda, React-Router, Vue-Router, Angular RoutingModule
--------------------------------------------------
4. Renderização:
Responsavel por decidir a melhor maneira de acessar e entregar algum conteudo para o browser pronto para q seja desenhado na janela sem complicações.
Render processa e entrega pronto para o navegador(tipo google) para ele exibir na tela.
Render define a melhot estrategia.
Formas
3 tipos de estrategia de renderizar:
4.1 100% Server :
Monta para que o cliente nem pense, só carregue a página.
4.2 Parte Server e Parte CLiente:
Parte com SO com rank e parte dinâmico.
4.3 100% Client: (Angular e React por default são essa aqui)
total dinÂmica. Não tem SO de ranquiamento . Só é montado no momento em que acessa.
----------------------------------------------
Dá pra fazer tudo isso sem framework na unha com HTML, CSS e JavaScript. Porém consome mais codigo, aumenta a complexidade.
O framework serve para facilitar essas 4 camadas por baixo dos panos.
Tem como fazer renderização sem framework? Sim, mas ficaria gigante e mais dificil.