Strs estou usando úm projeto que usa a injeção de dependencia do Spring para disponibilizar os objetos. Tipo Tenho um DAO que é injetado em um Objeto de negôcio.
Pergunto qual a vantagem de usar a injeção ? não seria mais pratico usar um new no Objeto ? tem vantagem usar a injeção ? pelo que vi o spring pega todos os beans e ja deixa na memória, isso não torna a aplicação pesada com performance menor ?
Injeção de Depenencia - Spring
3 Respostas
Não sei se deixa mais pesado ou não. Acho que “deixar a aplicação mais pesada ou mais leve” não é um motivo para você usar ou não injeção de dependências.
O que ele deixa na memória é a definição do bean, a instância vai depender da configuração de singleton e lazy-init.
Pelo que vejo então a grande vantagem da injeção é a modularização do sistema pois eu posso atraves da simples alteração de um XML mudar o comportamento do sistema fazendo com que uma classe nova por exemplo seja executada no lugar de outra está correto ?
Outra coisa o uso da injeção so faz sentido se for atraves do uso de interfaces pois as classes devem ser injetadas na interface correto ? Vi que o Spring permite que a injeção seja com interface ou não mas pelo que entendi injetar uma classe se usar interfaces não me da a opção de substituir a classe atraves do xml pois o sistema vai estar amarrado a uma implementação e não a uma interface.
Estou indo na cominho certo ?