Che cos'è l'iniezione di dipendenza?
L'iniezione di dipendenza è una tecnica utilizzata nella programmazione orientata agli oggetti (OOP). Questa tecnica fa riferimento o si collega a un altro programma e rende il programma originale dipendente dal programma di riferimento. Ciò consente ai programmatori di aggiungere istantaneamente funzioni o funzionalità extra al programma originale, ma rende anche la codifica più complicata e aggiunge una codifica eccessiva che può rallentare il programma. La maggior parte dei programmi OOP consente ai programmatori di fare riferimento a una varietà di programmi installati senza dover aggiungere codice.
L'uso dell'iniezione di dipendenza è spesso parsimonioso nella maggior parte dei programmi. Per rendere dipendente il programma, il programmatore scrive il codice che fa riferimento a un altro programma, in parte o interamente. Normalmente, è possibile fare riferimento a qualsiasi programma installato, ma alcuni schemi di codifica consentono di fare riferimento solo a programmi specifici. Ad esempio, se il programmatore desidera aggiungere funzionalità di testo al programma, invece di creare manualmente la funzione, può fare riferimento a un programma di elaborazione testi. In questo modo, il programma originale ora ha una nuova funzionalità, ma dipende dal fatto che l'altro programma funzioni e rimanga installato sul computer.
La maggior parte dei nuovi programmatori preferisce utilizzare l'iniezione delle dipendenze invece di creare manualmente le funzionalità. Questo perché la creazione di funzionalità può essere complicata e i nuovi programmatori potrebbero non sapere come renderla efficace. Facendo riferimento a un programma, il programmatore non ha bisogno di conoscere la codifica e qualsiasi funzione può essere aggiunta con poche righe di codice.
Ci sono molti problemi con l'iniezione di dipendenza, specialmente se il programma è destinato ai consumatori, motivo per cui è spesso inutilizzato o usato con parsimonia da professionisti e fornitori di software. Uno dei problemi più ovvi con l'iniezione di dipendenza da parte del consumatore è la possibilità che il consumatore non abbia il programma di riferimento. Se il programma è costruito per fare riferimento a una funzione nel Programma A, ma l'utente non ha il Programma A installato, la funzione o l'intero programma riscontrerà un errore debilitante.
Ad alti livelli di dipendenza, a cui fanno riferimento diversi programmi, si manifestano altri problemi. Fare riferimento a uno o due programmi crea una piccola quantità di codice, ma fare di più può richiedere un codice eccessivo che rallenta il programma. Se il programma ha un errore, ora c'è una grande quantità di codifica complicata che il programmatore deve immergersi per trovare l'errore, soprattutto perché l'errore potrebbe essere con il programma di riferimento e non con il programma originale.
Molti nuovi programmatori usano l'iniezione di dipendenza, quindi la maggior parte degli schemi OOP offre un modo automatico di fare riferimento a un programma. Ciò consente al programmatore, con pochi clic del mouse, di stabilire la connessione di riferimento. Fare riferimento automaticamente a un programma spesso aggiunge un po 'più di codifica rispetto alla scrittura manuale del riferimento, ma poiché il programmatore è nuovo e molto probabilmente il programma non andrà ai consumatori, ciò non dovrebbe presentare seri problemi.