Dependency injection
Көрініс
	
	
Dependency injection (қаз. тәуелділіктер иньекциясы; орыс. внедрение зависимости) - бағдарламалық жасақтама өңдеу үлгісі (ағылш. software design pattern), өзге үлгілерден айырмашылығы бағдарламалық жасақтама орындалу барысында қолданатын компоненттерді таңдауы компиляция уақытында емес run-time уақытында іске асады.
Қолдан енгізілген иньекция
[өңдеу | қайнарын өңдеу]Бұл мысалда, MyApplication.main() тәуелділік иньекциясы рөлін атқарады, VerySimpleStockTraderImpl кодында жазылған тәуелділіктердің іске асырылған кодын constructor injection арқылы иньекциялайды.
public class VerySimpleStockTraderImpl implements IAutomatedStockTrader {
    private IStockAnalysisService analysisService;
    private IOnlineBrokerageService brokerageService;
    public VerySimpleStockTraderImpl(
            IStockAnalysisService analysisService,
            IOnlineBrokerageService brokerageService) {
        this.analysisService = analysisService;
        this.brokerageService = brokerageService;
    }
    public void executeTrades() {
        …
    }
}
public class MyApplication {
    public static void main(String[] args) {
        IStockAnalysisService analysisService = new StockAnalysisServiceImpl();
        IOnlineBrokerageService brokerageService = new NewYorkStockExchangeBrokerageServiceImpl();
        IAutomatedStockTrader stockTrader = new VerySimpleStockTraderImpl(
            analysisService,
            brokerageService);
        stockTrader.executeTrades();
    }
}