Injeção de dependência (
Dependency Injection, em inglês) é um padrão de desenvolvimento de
programas de computadores utilizado quando é necessário manter baixo o nível de
acoplamento entre diferentes módulos de um sistema. Nesta solução as dependências entre os módulos não são definidas programaticamente, mas sim pela configuração de uma infraestrutura de software (
container) que é responsável por "injetar" em cada componente suas dependências declaradas. A Injeção de dependência se relaciona com o padrão
Inversão de controle mas não pode ser considerada um sinônimo deste.