Sobes.tech
Junior — Middle

Peut-on expliquer ce qu'est l'injection de dépendances et comment elle est utilisée en programmation?

sobes.tech IA

Réponse de l'IA

L'injection de dépendances (Dependency Injection, DI) est un patron de conception dans lequel un objet reçoit ses dépendances (par exemple, d'autres objets ou services) de l'extérieur, plutôt que de les créer lui-même. Cela aide à rendre le code plus modulaire, testable et flexible.

En programmation, cela se réalise généralement par la transmission des dépendances dans le constructeur de la classe, via des setters ou des interfaces. Par exemple, en Android, on utilise souvent des bibliothèques DI (Dagger, Hilt) qui créent et transmettent automatiquement les objets nécessaires.

Exemple en Kotlin:

class Engine {
    fun start() = println("Moteur démarré")
}

class Car(private val engine: Engine) {
    fun drive() {
        engine.start()
        println("La voiture est en marche")
    }
}

fun main() {
    val engine = Engine() // création de la dépendance
    val car = Car(engine) // injection de la dépendance
    car.drive()
}

Ici, Car ne crée pas Engine lui-même, mais le reçoit de l'extérieur, ce qui facilite le remplacement ou le test de Engine.