Per prima cosa, sono un programmatore entry level; In effetti, sto finendo un A.S. laurea con un progetto di pietra di copertura finale durante l'estate. Nel mio nuovo lavoro, quando non c'è un progetto da fare (sono in attesa di riempire la squadra con altri nuovi assunti), mi è stato dato dei libri da leggere e imparare mentre aspetto - alcuni libri di testo, altri non tanto (come il codice completo). Dopo aver esaminato questi libri, mi sono rivolto a Internet per imparare il più possibile e ho iniziato a conoscere SOLID e DI (abbiamo parlato del principio di sostituzione di Liskov, ma non di molte idee SOLIDE). Quindi, come ho appreso, mi sono seduto per imparare meglio, e ho iniziato a scrivere del codice per utilizzare DI a mano (non ci sono quadri DI sui computer di sviluppo).
Il fatto è che, mentre lo faccio, noto che sembra familiare ... e sembra che sia molto simile al lavoro che ho fatto in passato usando la composizione di classi astratte usando il polimorfismo. Mi manca un'immagine più grande qui? C'è qualcosa in DI (almeno a mano) che va oltre? Capisco la possibilità di avere configurazioni non in codice di alcuni framework DI con alcuni grandi vantaggi per quanto riguarda il cambio delle cose senza dover ricompilare, ma quando lo faccio a mano, non sono sicuro che sia diverso da quanto sopra ... Qualche idea su questo sarebbe molto utile!