Hva er Dependency Injection
Mønster for å sende avhengigheter eksternt
Dependency Injection (DI) er et designmønster der et objekt mottar sine avhengigheter fra eksterne kilder i stedet for å opprette dem selv.
Injeksjonstyper
- Constructor Injection — via konstruktør
- Setter Injection — via setter-metoder
- Interface Injection — via grensesnitt
- Property Injection — via offentlige egenskaper
Fordeler
- Løs kobling — komponenter er lett utskiftbare
- Testbarhet — enkelt å erstatte mocks og stubs
- Fleksibilitet — oppførsel konfigureres eksternt
- Gjenbrukbarhet — mer modulær kode
- Ren arkitektur — avhengighetsinversjon
Populære DI-containere
- Spring (Java)
- .NET Core DI (C#)
- InversifyJS (TypeScript)
- Dagger (Android)
- Angular DI