Ich bin ein großer Fan von DI / IOC. Es ist großartig, um harte Abhängigkeiten zu verarbeiten / zu abstrahieren, und erleichtert das Leben ein wenig.
Allerdings habe ich ein kleines Problem damit, das ich nicht sicher bin, wie ich es lösen soll.
Die Grundidee in DI / IOC ist, dass beim Instanziieren eines Objekts alle Abhängigkeiten im Konstruktor vorab ausgefüllt werden.
IMHO gibt es jedoch verschiedene Arten von Parametern für Konstruktoren (insbesondere, wenn Ihre Objekte unveränderlich sind).
- Abhängigkeiten (Objekte, die für die Ausführung Ihres Objekts erforderlich sind)
- Konfiguration (Informationen zur Umgebung, die für die Ausführung der Arbeit erforderlich ist)
- Parameter (Daten, an denen gearbeitet wird)
Ich finde, dass IOC gut mit Abhängigkeiten funktioniert. Aber ich versuche immer noch, den besten Weg zu finden, um mit den anderen beiden umzugehen. Da der Konstruktor jedoch vom IOC-Container ausgeführt werden soll, muss ich diese Elemente anscheinend in den IOC-Container einfügen.
Ich würde gerne wissen, welche Strategien / Muster die Leute anwenden und welche Vor- und Nachteile die Leute gefunden haben.
NB. Mir ist bewusst, dass dies eine sehr subjektive Frage ist, und ich habe versucht, sie gemäß den SE-Richtlinien zu einer "guten" subjektiven Frage zu machen.
I am still trying to work out the best way to deal with the other two
- Übergeben Sie sie als gewöhnliche Parameter an Ihr Objekt?