Esta atividade tem como objetivo aprofundar o entendimento sobre injeção de dependência, explorando os conceitos teóricos por trás da implementação realizada na issue técnica correspondente.
Pesquisa
Antes da discussão, pesquise e reflita sobre os seguintes tópicos:
- O que é injeção de dependência e qual problema ela resolve?
- Quais são os tipos de injeção de dependência existentes (construtor, propriedade, método)?
- O que é um container de IoC (Inversion of Control)?
- Quais são os ciclos de vida de um serviço (
Transient, Scoped, Singleton) e quando usar cada um?
- O que é o princípio da inversão de dependência (DIP) e qual sua relação com injeção de dependência?
Pontos para Discussão
- Por que optamos pelo container padrão da Microsoft em vez de alternativas como Autofac ou Ninject? Quais são as vantagens e desvantagens de cada abordagem?
- Por que as validações foram movidas para a camada Application e não permaneceram na camada principal? O que isso nos diz sobre separação de responsabilidades?
- Qual ciclo de vida faz mais sentido para registrar os validators e por quê?
- Em projetos maiores, como a injeção de dependência impacta a testabilidade do código?
Checklist
Esta atividade tem como objetivo aprofundar o entendimento sobre injeção de dependência, explorando os conceitos teóricos por trás da implementação realizada na issue técnica correspondente.
Pesquisa
Antes da discussão, pesquise e reflita sobre os seguintes tópicos:
Transient,Scoped,Singleton) e quando usar cada um?Pontos para Discussão
Checklist