Este documento fornece informações sobre Loiane Groner, uma desenvolvedora especializada em Angular, JavaScript e programação reativa. Ela oferece treinamentos sobre esses tópicos e mantém um blog e perfis nas redes sociais para compartilhar conhecimento. O documento também apresenta conceitos-chave da programação reativa e como implementá-la usando Angular e a biblioteca NgRx.
58. O maior problema no desenvolvimento e
manutenção de sistemas de software de
grande escala é a complexidade -
sistemas grandes são difícil de entender
Ben Moseley & Peter Marks
Out of the Tar Pit: Analysis of Software Complexity
59. Acreditamos que o principal contribuinte
para esta complexidade em muitos
sistemas é o gerenciamento do estado e
o fardo que isso acrescenta ao tentar
analisar e entender o sistema. Outros
contribuintes estreitamente relacionados
são o volume do código e a preocupação
com o controle de fluxo do sistema.
Ben Moseley & Peter Marks
Out of the Tar Pit: Analysis of Software Complexity
100. Components: Dumb Components
- Apenas recebem informações via Input properties e disparam
eventos com Output properties
- NÃO sabem nem se comunicam com Store ou Estado da
aplicação
124. Prós e Contras:
1.Fluxo unidirecional ✅
2.Debug volta ao tempo (DevTools) ✅
3.Separação do código ✅
4.Fácil debug e bug fix (1, 2, e 3) ✅
5.Mais fácil pra testar devido à funções puras ✅
6.Melhor performance (onPush) ✅
7.Serialização do estado ✅
8.Mais uma camada == mais código ⛔
126. Gerenciamento de estado previsível
Fácil de testar (estado imutável + DI)
Desacoplado de formatos de mensagem e servidor
Serviços não sabem do estado da aplicação
Sistema modular + lazy loading