Pratique a manipulação de fluxos de dados com RxJS.
Básico
Conceito: Qual a principal diferença entre um Observable e uma Promise?
Async Pipe: Qual o benefício de usar o pipe | async no HTML em vez de fazer o .subscribe() manualmente no TypeScript?
Intermediário
map vs filter: Explique a diferença de comportamento entre o operador map e o operador filter.
BehaviorSubject: Por que o BehaviorSubject é geralmente preferido em relação ao Subject comum para armazenar o estado atual de um usuário logado?
Desafio
5. Encadeamento: Escreva um exemplo de código usando .pipe() que receba uma lista de números, multiplique cada um por 2 (use map) e depois retorne apenas os números que forem maiores que 10 (use filter).
📚 Gabarito e Soluções Comentadas
Gabarito Explicado ### Questão 1: Conceito **Resposta Comentada:** - **Fundamentação:** No contexto de **RxJS e Programação Reativa ⚡**, o conceito abordado (Conceito) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 2: Async Pipe **Resolução e Implementação:**
// Estrutura de implementação recomendada para Async Pipe// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **RxJS e Programação Reativa ⚡**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 3: map vs filter **Resposta Comentada:** - **Fundamentação:** No contexto de **RxJS e Programação Reativa ⚡**, o conceito abordado (map vs filter) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 4: BehaviorSubject **Resposta Comentada:** - **Fundamentação:** No contexto de **RxJS e Programação Reativa ⚡**, o conceito abordado (BehaviorSubject) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 5: Encadeamento **Resolução e Implementação:**
// Estrutura de implementação recomendada para Encadeamento// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **RxJS e Programação Reativa ⚡**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda.