Stiamo iniziando a utilizzare l'integrazione delle dipendenze in un programma interattivo abbastanza ampio. È ancora presto, ma ho la sensazione che la maggior parte degli oggetti che vengono iniettati vorranno che i dati di runtime siano passati ai loro costruttori. Prima di questo, ho utilizzato solo DI in applicazioni Web in cui la creazione di tutto alla radice di composizione non è un problema.
Quando si lavora con i dati di runtime, sembra che le opzioni siano l'iniezione manuale o le fabbriche astratte. C'è qualcosa di importante da considerare quando si decide tra i due o principalmente si scende alle preferenze personali? Sto usando Ninject con l'estensione factory, quindi il percorso di fabbrica non è troppo oneroso. Tuttavia, se finiamo con le fabbriche in ogni classe, è un segno che stiamo facendo qualcosa di sbagliato? Dovremmo preferire l'iniezione manuale quando non è necessaria la potenza di un contenitore IoC? Potrebbe semplicemente significare che stiamo sfruttando eccessivamente l'iniezione di dipendenza?