..
"S Inverze Control (IOC) je typickým rysem tohoto rámce, který se pohybuje průtoku aplikace rámce.
Vezměme si příklad, objasnit pojem: Pokud vytvoříte GUI API přes houpačka , programátor potřebuje pouze k provedení obslužné rutiny události vyvolané uživatelem, například stisknutím tlačítka nebo zadáním textu. Rámce je ponecháno na ovládání aplikace toku, jako je například otevírání a zavírání oken.
Tento typ chování se nazývá IoC, protože ovládání se pohybuje vývojář rámce.
Jakmile je jasné, co Mezinárodní olympijský výbor, vidíme, jak se používá na jaře.
Všechny aplikace se skládají z předmětů, které dosáhne předem určené cíle, musí vzájemně spolupracovat, a nevyhnutelně tvoří závislost.
Normálně tyto závislosti jsou vyřešeny kód, který je vhodný pro konfiguraci (typicky výrobce).
Předpokládejme, že máme zavést třídu pro správu videa obchod:
it.mrwebmaster balení;
import java.util.ArrayList;
import java.util.List;
{Public class VideoManager
Soukromé DvdService dvdService;
veřejné VideoManager () {
super ();
/ **
* Konfigurace a řešení závislostí
* /
this.dvdService DvdServiceImpl = new ();
}
<Dvd> GetAvalaibleDvdList veřejný seznam () {
/ **
* Načíst seznam DVD
* /
Seznam <Dvd> dvdList dvdService.getDvdList = ();
/ **
* Průchozí seznam DVD najít
* Jsou k dispozici
* /
Seznam = new ArrayList <Dvd> availabeDvdList <Dvd> ();
pro (DVD DVD: dvdList) {
if (dvd.isDisponibile ()) {
availabeDvdList.add (DVD);
}
}
availabeDvdList návrat;
}
}
V tomto příkladu třídy VideoManager má za úkol získat finanční prostředky na seznamu nežádoucích pronajatých DVD. Seznam je získat pomocí služby (DvdService), který načte seznam všech DVD a na kole na seznamu jsou k dispozici DVD. Třída VideoManager, proto má závislost na objektu DvdService, která je řešena v konstruktoru.

Pokud bychom neměli použít jaře jsme měli starat o řešení VideoManager dipendeza v konstruktoru třídy, protože závislost bude vyřešen do jara.
Na jaře, pak je MOV invertovat kontrolu nad závislostí konfiguraci.
Z tohoto důvodu bylo vytvořeno Martin Fowler ve svém slavném článku , termín Dependecy Injection (DI), který je někdy používán nesprávně jako synonymum id MOV.
Základní koncept DI je mít samostatný objekt k tomu řešení závislostí a inicializace.
Následující assembler třídy, má za úkol inicializovat třídy DvdService:

K dispozici jsou tři typy Dependecy Injection:
| |
Linux (kurz)
Kompletní průvodce pro open-source systému. Od 49 €. |
| |
PHP (kurz)
Celý kurz pro vytváření dynamických webů. Od 49 €. |
| |
Ruby a Ruby on Rails (kurz)
Vytvořit software a webových aplikací s Ruby a RoR. Od 39 €. |