Padrões de DI: Ambient Context

Enfim chegamos ao último artigo da série "Padrões de DI", trazendo o padrão conhecido por Ambient Context. De todos os padrões mostrados, este é o mais específico e o único que ainda não implementei em um projeto real, embora já o considere principalmente pela questão da testabilidade, mostrada ao final do artigo. 1. O QUE... Continuar Lendo →

Padrões de DI: Method Injection

Continuamos a série "Padrões de DI", mostrando uma terceira forma de injetarmos dependências: Method Injection. 1. O QUE É Como o próprio nome diz, Method Injection é um padrão de DI que consiste em fornecer a dependência como parâmetro de um método. 2. QUANDO USAR Ao contrário de Constructor Injection e Property Injection, com Method Injection, a dependência... Continuar Lendo →

Padrões de DI: Property Injection

Vamos continuar a série "Padrões de DI" mostrando outra forma de injetar dependências, conhecida por Property Injection. Seguimos os mesmos moldes do post anterior, trazendo a definição do padrão, quando usá-lo e como implementá-lo. 1. O QUE É Property Injection - também chamado de Setter Injection - é um padrão de DI onde a dependência é fornecida... Continuar Lendo →

Padrões de DI: Constructor Injection

Nos posts anteriores da série "Padrões de DI", vimos o que é "Dependency Injection" e o que podemos ganhar com essa técnica. Também vimos onde e como usar um container de DI, conhecendo os conceitos de Composition Root e Register-Resolve-Release. Neste post e nos próximos, veremos como utilizar padrões que tornam possível o uso de DI... Continuar Lendo →

Padrões de DI: Register Resolve Release

De volta com a série "Padrões de DI",  entendam este terceiro e breve post como um complemento ao post anterior, com o objetivo de explicitar mais um conceito referente ao tema "Injeção de Dependência": o padrão Register-Resolve-Release. Enquanto o Composition Root nos diz ONDE usar um DI container, o padrão Register-Resolve-Release nos diz COMO usá-lo.... Continuar Lendo →

Blog no WordPress.com.

Acima ↑