Inversion of Control
Inversion of Control è un principio utilizzato da framework come un modo per consentire agli sviluppatori di estendere il framework o creare applicazioni utilizzando esso. L'idea di base è che il framework sia a conoscenza degli oggetti del programmatore e li invochi.
Questo è l'opposto dell'utilizzo di un'API, in cui il codice dello sviluppatore effettua le invocazioni al codice API. Quindi, i quadri invertono il controllo: non è il codice dello sviluppatore che si occupa, invece il quadro rende le chiamate in base qualche stimolo.
Probabilmente siete stati in situazioni in cui avete sviluppato sotto la luce di questo principio, anche se non ne siete a conoscenza.
Inversion di controllo contenitore
un'inversione di controllo contenitore utilizza il principio sopra descritto (in breve) il gestore di classi. Cioè, la loro creazione, distruzione, durata, configurazione e dipendenze . In questo modo le classi non devono ottenere e configurare le classi da cui dipendono. Questo riduce drasticamente accoppiamento in un sistema e, di conseguenza, semplifica il riutilizzo e controllabilità.
C'è una certa confusione creata da persone che pensano che "Inversion di Control" sia un sinonimo di "Inversion of Control Container". Come affermato da , l'inversione di controllo è un principio più ampio.
Spesso le persone pensano che sia tutto di "iniezione", e trasmesso che questo è lo scopo primario di contenitori CIO. Infatti, "iniezione" è una conseguenza, un mezzo per disaccoppiare, non il primario scopo.
+1 Sembra una buona lettura. Grazie. –
Sì, lo è. Btw Mark Seeman prende attivamente parte allo stackoverflow, puoi raggiungerlo facilmente e chiederglielo direttamente, credo. – renatoargh