Tach!
[Dependency-Injection]
Dass die Testbarkeit der Module besser wird ist klar... aber wie wird das ganze konfigurierbar? Momentan sieht es so aus, dass im Live-Betrieb die Objekte mit hardcodierten Abhängigkeiten "injected" werden... das kanns ja nicht sein... wie löst man das elegant?
Das ist die einfachste Form und die finde ich für den Hausgebrauch durchaus ausreichend. Wenn du ein DI-Framework nimmst, dann sollte dieses die von dir gefragte Konfigurierbarkeit mitbringen. Das heißt, aufgrund deiner Konfiguration holt und übergibt das DI-Framework die passende Abhängigkeit. Im Falle einer Änderung muss man idealerweise nur die Konfiguration anpassen. Natürlich ist ausgewachsene DI nicht immer von Vorteil, denn dadurch kommt wieder mehr Komplexität ins System. (Lohnt sich das im Verhältnis zum Gesamtprojekt sollte man sich da fragen.) Die Konfiguration liegt gemeinhin irgendwo anders als der Code und diese Trennung erhöht nicht unbedingt die leichte Nachvollziehbarkeit.
dedlfix.