Conceito: Explique por que não é uma boa prática colocar lógica de cálculo ou validação dentro do Controller.
Responsabilidade: Cite 3 exemplos de tarefas que devem ser feitas na camada de Service.
🟡 Médios
Tratamento de Erros: Por que o Service deve lançar (throw) um erro em vez de retornar um Status Code (ex: 404)?
Reutilização: Imagine que você tem um EmailService. Cite dois Controllers diferentes que poderiam usar esse mesmo serviço.
🔴 Desafio
Lógica de Negócio: Escreva o pseudocódigo para um PedidoService.finalizar(pedidoId).
Quais validações você faria? (Estoque, status do pedido, limite de crédito do cliente).
Como você lidaria com o caso de "Produto Sem Estoque"?
Qual tipo de dado (DTO) o Service deveria retornar para o Controller após o sucesso?
📚 Gabarito e Soluções Comentadas
Gabarito Explicado ### Questão 1: Conceito **Resposta Comentada:** - **Fundamentação:** No contexto de **Services e Regras de Negócio**, 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: Responsabilidade **Resposta Comentada:** - **Fundamentação:** No contexto de **Services e Regras de Negócio**, o conceito abordado (Responsabilidade) é 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 3: Tratamento de Erros **Resposta Comentada:** - **Fundamentação:** No contexto de **Services e Regras de Negócio**, o conceito abordado (Tratamento de Erros) é 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: Reutilização **Resposta Comentada:** - **Fundamentação:** No contexto de **Services e Regras de Negócio**, o conceito abordado (Reutilização) é 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: Lógica de Negócio **Resposta Comentada:** - **Fundamentação:** No contexto de **Services e Regras de Negócio**, o conceito abordado (Lógica de Negócio) é 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.