Eine Metapher, die ich bei der Programmierung von Nicht-DI-Systemen festhielt, ist "eine Person, die mit ihren Spielzeugen spielt". Eine Person ist ein Objekt und die Spielzeuge der Person sind alles, was das Objekt erzeugt, speichert, initialisiert und manipuliert. Die Spielzeuge können Ereignisse auslösen, wenn sie einen bestimmten Zustand erreichen, aber sie wissen nichts über die Person, die sie benutzt; Sie sind nur kleine schwarze Kästchen mit Steuerschaltern, die ihre Schnittstellen ausmachen. Die Person kann auf Ereignisse von den Spielzeugen hören und reagieren, indem sie ihre Schnittstellen manipuliert. Die Person kann mit ihren Spielzeugen machen, was immer sie will, aber sie/er sollte sich wahrscheinlich nicht mit ihren Innereien einmischen, weil sie brechen könnten.Was ist eine gute Metapher für Dependency Injection?
Die Verwüstung, die DI meiner Metapher zufügt, ist, dass es die Spielzeuge in bewusste Wesen verwandelt, die ihren Besitzer, die Person, die sie benutzt, kennen. Die Spielzeuge können diese Person manipulieren, aber die Person weiß nichts davon, wie sie arbeitet und kümmert es nicht einmal. Die Person besitzt nur die Spielzeuge und erwartet, dass die Spielzeuge ihn zur Zufriedenheit des Spielers manipulieren.
WTF ?? Das hört sich schrecklich an !!
Was ist eine gute mentale Metapher, die sie verwendet haben, um darüber nachzudenken, wie DI-Systeme funktionieren?
Ist die Verbindung unterbrochen? –
@DavidAndreoletti danke für die heads-up. Ich habe es wieder gefunden und eine Kopie auf SO hochgeladen, anstatt einfach zu verlinken. – Finglas