Junior — Middle
Kann man erklären, was Dependency Injection ist und wie es in der Programmierung angewendet wird?
sobes.tech KI
Antwort von AI
Abhängigkeitsinjektion (Dependency Injection, DI) ist ein Entwurfsmuster, bei dem ein Objekt seine Abhängigkeiten (z.B. andere Objekte oder Dienste) von außen erhält, anstatt sie selbst zu erstellen. Dies hilft, den Code modularer, testbarer und flexibler zu machen.
In der Programmierung wird dies meist durch die Übergabe der Abhängigkeiten im Konstruktor der Klasse, über Setter oder durch Schnittstellen realisiert. Zum Beispiel verwenden Android-Entwickler oft DI-Bibliotheken (Dagger, Hilt), die die benötigten Objekte automatisch erstellen und übergeben.
Beispiel in Kotlin:
class Engine {
fun start() = println("Motor gestartet")
}
class Car(private val engine: Engine) {
fun drive() {
engine.start()
println("Auto fährt")
}
}
fun main() {
val engine = Engine() // Abhängigkeit erstellen
val car = Car(engine) // Abhängigkeit injizieren
car.drive()
}
Hier erstellt Car Engine nicht selbst, sondern erhält es von außen, was das Ersetzen oder Testen von Engine erleichtert.