Pular para conteúdo

Exercícios: Aula 14 – Padrões de Projeto com TypeScript 🛡️

🟢 Nível: Básico

  1. Injeção de Dependência: Crie uma função que receba um objeto de configuração por parâmetro (em vez de usá-lo globalmente).
  2. Singleton: Implemente o padrão Singleton para uma classe de Gerenciamento de Configurações.

🟡 Nível: Intermediário

  1. Repository Pattern: Crie uma interface IRepository<T> e implemente uma versão básica para uma entidade Produto.
  2. Factory Pattern: Implemente uma fábrica de objetos que crie diferentes tipos de "Veículos".

🔴 Nível: Desafio

5. Strategy Pattern: Use o padrão Strategy para implementar diferentes formas de cálculo de imposto baseadas no tipo de produto.

📚 Gabarito e Soluções Comentadas

Gabarito Explicado ### Questão 1: Injeção de Dependência **Resolução e Implementação:**
// Estrutura de implementação recomendada para Injeção de Dependência
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Padrões de Projeto com TypeScript ️**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 2: Singleton **Resolução e Implementação:**
// Estrutura de implementação recomendada para Singleton
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Padrões de Projeto com TypeScript ️**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 3: Repository Pattern **Resolução e Implementação:**
// Estrutura de implementação recomendada para Repository Pattern
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Padrões de Projeto com TypeScript ️**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 4: Factory Pattern **Resolução e Implementação:**
// Estrutura de implementação recomendada para Factory Pattern
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Padrões de Projeto com TypeScript ️**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 5: Strategy Pattern **Resposta Comentada:** - **Fundamentação:** No contexto de **Padrões de Projeto com TypeScript ️**, o conceito abordado (Strategy Pattern) é 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.