Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Dica
Esse conteúdo é um trecho do eBook, arquitetura de microsserviços do .NET para aplicativos .NET em contêineres, disponível em do .NET Docs ou como um PDF para download gratuito que pode ser lido offline.
Usar princípios SOLID e Injeção de Dependência
Os princípios SOLID são técnicas críticas a serem usadas em qualquer aplicativo moderno e crítico, como o desenvolvimento de um microsserviço com padrões DDD. SOLID é um acrônimo que agrupa cinco princípios fundamentais:
Princípio de responsabilidade única
Princípio aberto/fechado
Princípio de substituição de Liskov
Princípio de segregação de interface
Princípio de inversão de dependência
SOLID é mais sobre como projetar as camadas internas do seu aplicativo ou microsserviço e sobre o desacoplamento de dependências entre elas. Ele não está relacionado ao domínio, mas ao design técnico do aplicativo. O princípio final, o princípio de Inversão de Dependência, permite que você desacopla a camada de infraestrutura do restante das camadas, o que permite uma melhor implementação desacoplada das camadas DDD.
A DI (Injeção de Dependência) é uma maneira de implementar o princípio de Inversão de Dependência. É uma técnica para alcançar o acoplamento flexível entre objetos e suas dependências. Em vez de instanciar diretamente colaboradores ou usar referências estáticas (ou seja, usando novo...), os objetos de que uma classe precisa para executar suas ações são fornecidos para (ou "injetados em") a classe. Na maioria das vezes, as classes declaram suas dependências por meio de seu construtor, permitindo que elas sigam o princípio de Dependências Explícitas. Geralmente, a Injeção de Dependência baseia-se em contêineres IoC (Inversão de Controle) específicos. ASP.NET Core fornece um contêiner de IoC interno simples, mas você também pode usar seu contêiner de IoC favorito, como Autofac ou Ninject.
Seguindo os princípios SOLID, suas classes tendem naturalmente a ser pequenas, bem estruturadas e facilmente testadas. Mas como você pode saber se muitas dependências estão sendo injetadas em suas classes? Se você usar DI por meio do construtor, será fácil detectar isso apenas examinando o número de parâmetros do construtor. Se houver muitas dependências, isso geralmente é um sinal (um cheiro de código) que sua classe está tentando fazer demais e provavelmente está violando o princípio de Responsabilidade Única.
Seria necessário outro guia para cobrir SOLID em detalhes. Portanto, este guia exige que você tenha apenas um conhecimento mínimo desses tópicos.
Recursos adicionais
SOLID: Princípios OOP fundamentais
https://deviq.com/solid/Inversão de Contêineres de Controle e o padrão de Injeção de Dependência
https://martinfowler.com/articles/injection.htmlSteve Smith. New is Glue ("New" é como cola)
https://ardalis.com/new-is-glue