Laravel

Service Container & DI

Dependency injection, service providers, binding, singletons, contextual binding, container resolution, facades

20 questions d'entretien·
Confirmé
1

Qu'est-ce que le Service Container dans Laravel ?

Réponse

Le Service Container est un outil puissant pour gérer les dépendances de classe et effectuer l'injection de dépendances. Il permet de résoudre automatiquement les dépendances en inspectant les type-hints des constructeurs. Utiliser le Service Container améliore la testabilité et le découplage en évitant l'instanciation directe des dépendances.

2

Quel est l'avantage principal de l'injection de dépendances par rapport à l'instanciation directe ?

Réponse

L'injection de dépendances améliore la testabilité en permettant de substituer facilement les dépendances par des mocks ou des stubs lors des tests. Elle favorise également le découplage en évitant que les classes soient fortement couplées à leurs dépendances concrètes. Cela rend le code plus maintenable et flexible face aux changements.

3

Comment injecter une dépendance dans le constructeur d'un contrôleur Laravel ?

Réponse

Ajouter un type-hint de la dépendance dans le constructeur permet au Service Container de résoudre automatiquement cette dépendance. Laravel inspecte les paramètres du constructeur et injecte les instances appropriées sans configuration supplémentaire. Cette approche est la plus simple et la plus courante pour l'injection de dépendances dans les contrôleurs.

4

Quelle est la différence entre bind() et singleton() dans le Service Container ?

5

Que fait la méthode app()->make(UserRepository::class) ?

+17 questions d'entretien

Maîtrise Laravel pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement