Mis on Sõltuvuse süstimine
Muster sõltuvuste väliseks edastamiseks
Sõltuvuse süstimine (DI) on disainimuster, kus objekt saab oma sõltuvused välistest allikatest, mitte ei loo neid ise.
Süstimise tüübid
- Constructor Injection — konstruktori kaudu
- Setter Injection — setter-meetodite kaudu
- Interface Injection — liidese kaudu
- Property Injection — avalike omaduste kaudu
Eelised
- Nõrk sidumine — komponente on lihtne asendada
- Testitavus — lihtne asendada mock- ja stub-objekte
- Paindlikkus — käitumine konfigureeritakse väliselt
- Taaskasutatavus — modulaarsem kood
- Puhas arhitektuur — sõltuvuse inversioon
Populaarsed DI konteinerid
- Spring (Java)
- .NET Core DI (C#)
- InversifyJS (TypeScript)
- Dagger (Android)
- Angular DI