Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Injeção de dependencias

Professor, estou ainda aqui matando a cabeça para entender essas injeções de dependencias, o que me confunde demais. Qual é a simplicidade de se aplicar a injeção de dependencia?

1 resposta
solução!

Oi NLeal, tudo bem? O que fica mais simples quando injetamos dependencias? Bom, primeiro, aonde eu estou usando a dependencia, não há uma duplicação de código que poderia haver. Por exemplo:

Pra registrar um produto no banco, eu preciso de uma conexão com o banco de dados, correto? Eu posso criar essa conexão quando e aonde eu quiser, mas isso não seria bom, veja, duplicariamos esse código em várias partes. Como resolvemos isso? Bom, podemos criar uma função que abre a conexão, ou até mesmo uma classe já que estámos falando de orientação à objetos.

Quando fazemos isso, estamos encapsulando o código referente ao banco de dados, mas e agora? como fazemos pra que a função ou metodo registre o produto no banco de dados, simples, passamos a conexao pra ele certo? Passamos por onde? ah, passamos por parametro! Ou seja, agora, a função ou metodo que registra nosso produto no banco de dados, possui uma dependencia de uma conexão com o banco de dados.

Onde fica a simplicidade disso?

1 - A função que registra o produto não precisa saber como o banco funciona, qual é o banco ou o que é preciso pra conectar ao banco, ele só precisa da conexão.

2 - Caso alguma regra de acesso ao banco mude, usuário, senha ou até mesmo o banco de dados mude, só precisamos mudar essa regra em um unico lugar, todos os que dependem dela não precisarão ser modificados.

3 - Podemos dizer que fica também mais fácil de encontrar errors e até mesmo evita de cometermos deslizes já que tudo tem um lugar bem definido assim como também suas resposabilidades.

Conseguiu entender? Continue estudando, as coisas vão ficando mais claras enquanto vamos progredindo.

Esperto ter ajudado. Abraço.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software