Vai al contenuto

Dependency injection

Un componente riceve le dipendenze dall’esterno invece di creare da sé implementazioni concrete.

Noto anche comeDIIniezione delle dipendenze
Architettura software

Che cos’è la dependency injection?

Con la dependency injection, un componente riceve le dipendenze necessarie dall’esterno, ad esempio come parametri del costruttore. Non deve creare da sé l’implementazione concreta. La composizione delle parti è separata dal loro utilizzo. È possibile farlo con normale codice; il principio non richiede un contenitore DI specifico.

In un esempio inventato, un componente di report riceve un lettore di dati. Durante l’uso legge la fonte prevista; per un test mirato, un’implementazione di prova adatta può fornire dati fissi. Questo facilita verifiche isolate ma non dimostra il collegamento corretto alla fonte reale. Durata, configurazione e rilascio delle risorse restano da definire. DI è una forma specifica di inversione del controllo; non ogni inversione del controllo né ogni Service Locator è DI.

Fonti