Heim >häufiges Problem >Was bedeutet ioc?
Inversion of Control (IoC) ist ein Designprinzip in der objektorientierten Programmierung, das verwendet werden kann, um die Kopplung zwischen Computercodes zu reduzieren.
Die gebräuchlichste Methode heißt Dependency Injection (DI), die andere Methode heißt „Dependency Lookup“. Durch die Umkehrung der Kontrolle übergibt eine externe Entität, die alle Objekte im System steuert, bei der Erstellung eines Objekts die Referenz des Objekts, von dem sie abhängt, an dieses. Man kann auch sagen, dass Abhängigkeiten in das Objekt eingefügt werden.
IoC ist ein großes Konzept und kann auf unterschiedliche Weise umgesetzt werden.
Es gibt zwei Hauptformen:
Abhängigkeitssuche:
Der Container stellt Rückrufschnittstellen und Kontextbedingungen für Komponenten bereit. Sowohl EJB als auch Apache Avalon verwenden diesen Ansatz. Auf diese Weise muss die Komponente die vom Container bereitgestellte API verwenden, um Ressourcen und kollaborative Objekte zu finden. Die einzige Umkehrung der Steuerung spiegelt sich nur in den oben genannten Rückrufmethoden wider: Der Container ruft diese Rückrufmethoden auf Dadurch kann der Anwendungscode relevante Ressourcen abrufen.
Abhängigkeitsinjektion:
Die Komponente führt keine Positionierungsabfragen durch, sondern stellt nur gewöhnliche Java-Methoden für den Container bereit, um Abhängigkeiten zu ermitteln. Der Container ist allein für die Zusammenstellung der Komponenten verantwortlich. Er übergibt Objekte, die Abhängigkeiten erfüllen, über JavaBean-Eigenschaften oder Konstruktoren. Die Praxis, Abhängigkeiten über JavaBean-Eigenschaften einzufügen, wird als Setter-Injektion bezeichnet; die Praxis, Abhängigkeiten als Konstruktorparameter zu übergeben, wird als Konstruktor-Injektion
bezeichnetDas obige ist der detaillierte Inhalt vonWas bedeutet ioc?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!