O Conceito
A injeção de dependência é um padrão de projeto que prevê o desacoplamento do código dentro de uma aplicação. Isso facilita a manutenção e a implementação de novas funcionalidades. Já falamos de injeção de dependência neste post Injeção de Dependência, aqui mesmo no blog. Mas se fossemos resumir a injeção de dependência em uma frase, ela poderia ser dita assim:
Injeção de Dependências é um tipo de Inversão de Controle e significa que uma classe não mais é responsável por criar ou buscar os objetos dos quais depende.
Se quiser entender mais profundamente os conceitos, visite o post mencionado, lá você encontra inclusive, links para outros vídeos produzidos pela tecnologia sobre o assunto.
Colocando em Prática
Para praticar, a tecnologia gravou um BE.TECH com o Michael Prust. Várias formas de usar a injeção foram apresentadas. Há muitas dicas interessantes como:
- Programar a injeção para ocorrer no momento que desejamos.
- Utilizar o bind das classes para serem injetadas, relacionado a interface com as classes.
- Utilização de serviços da tecnologia de forma injetada através do uso das interfaces disponibilizadas, o que facilita a criação de testes unitários.
- Melhorar o código com queries ou até mesmo API de terceiros como Google, Amazon, etc., para que seja possível a implementação de testes unitários, criando uma camada intermediária que “fabrica” mecanismos que possibilitam injetar os recursos a serem testados.
- Entender que cada camada (Business Layer/Negócio e Presentation Layer/Apresentação) possui as suas injeções.
- Injetar customizações na camada do cliente.
- Uso de proxy nas injeções para a interceptação das chamadas.
- Aplicações do Rebind para substituir implementações anteriores substituindo por uma nova classe.
- Identificar formas de injeção: por propriedades, por métodos ou por construtores.
Se quiser assistir ao BE.TECH completo com todas essas dicas e muito mais, clique no vídeo abaixo:
O código usado neste BE.TECH pode ser baixado aqui.
Gostou deste post? Deixa seu comentário, te vejo na próxima publicação, um abraço,
Danton C. Franco Junior
#TimeTec