Perguntas com a marcação «dependency-injection»

Injeção de Dependência, é um padrão de design no qual as dependências (instâncias de objetos, propriedades) de um componente são definidas por meio dos construtores, métodos ou campos (propriedades). É uma forma especial da inversão de dependência mais geral.

4
Abordagens graduais para injeção de dependência
Estou trabalhando para tornar minhas aulas testáveis ​​por unidade, usando injeção de dependência. Mas algumas dessas classes têm muitos clientes e não estou pronto para refatorar todas elas para começar a passar nas dependências ainda. Então, eu estou tentando fazer isso gradualmente; mantendo as dependências padrão por enquanto, mas permitindo …




5
Como usar a injeção de dependência e evitar o acoplamento temporal?
Suponha que eu tenha o Serviceque recebe dependências via construtor, mas também precise ser inicializado com dados personalizados (contexto) antes de poder ser usado: public interface IService { void Initialize(Context context); void DoSomething(); void DoOtherThing(); } public class Service : IService { private readonly object dependency1; private readonly object dependency2; …

1
Usar a ordem de resolução de método do Python para injeção de dependência - isso é ruim?
Eu assisti o Pycon de Raymond Hettinger falar "Super Considerado Super" e aprendi um pouco sobre o MRO (Method Resolution Order) do Python, que lineariza as classes "parentais" de uma maneira determinística. Podemos usar isso para nossa vantagem, como no código abaixo, para fazer injeção de dependência. Então agora, naturalmente, …

5
Podemos substituir completamente a herança usando padrão de estratégia e injeção de dependência?
Por exemplo: var duckBehaviors = new Duckbehavior(); duckBehaviors.quackBehavior = new Quack(); duckBehaviors.flyBehavior = new FlyWithWings(); Duck mallardDuck = new Duck(DuckTypes.MallardDuck, duckBehaviors) Como a classe Duck contém todos os comportamentos (abstrato), a criação de uma nova classe MallardDuck(que se estende Duck) não parece ser necessária. Referência: Head First Design Pattern, Capítulo …







4
contexto ambiental versus injeção de construtor
Eu tenho muitas classes principais que exigem ISessionContext do banco de dados, ILogManager para log e IService usado para se comunicar com outros serviços. Eu quero usar injeção de dependência para esta classe usada por todas as classes principais. Eu tenho duas implementações possíveis. A classe principal que aceita IAmbientContext …


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.