Laravel

Service Container & DI

Dependency injection, service providers, binding, singletons, contextual binding, container-Auflösung, facades

20 Interview-Fragen·
Mid-Level
1

Was ist der Service Container in Laravel?

Antwort

Der Service Container ist ein leistungsstarkes Werkzeug zur Verwaltung von Klassenabhängigkeiten und zur Durchführung von Dependency Injection. Er löst Abhängigkeiten automatisch auf, indem er die Type-Hints der Konstruktoren inspiziert. Die Verwendung des Service Container verbessert die Testbarkeit und Entkopplung, da die direkte Instanziierung von Abhängigkeiten vermieden wird.

2

Was ist der Hauptvorteil von Dependency Injection gegenüber der direkten Instanziierung?

Antwort

Dependency Injection verbessert die Testbarkeit, da Abhängigkeiten beim Testen leicht durch Mocks oder Stubs ersetzt werden können. Sie fördert außerdem die Entkopplung, indem verhindert wird, dass Klassen eng mit ihren konkreten Abhängigkeiten gekoppelt sind. Das macht den Code wartbarer und flexibler gegenüber Änderungen.

3

Wie injiziert man eine Abhängigkeit in den Konstruktor eines Laravel-Controllers?

Antwort

Das Hinzufügen eines Type-Hints für die Abhängigkeit im Konstruktor ermöglicht es dem Service Container, diese Abhängigkeit automatisch aufzulösen. Laravel inspiziert die Konstruktorparameter und injiziert die passenden Instanzen ohne zusätzliche Konfiguration. Dieser Ansatz ist der einfachste und gebräuchlichste für Dependency Injection in Controllern.

4

Was ist der Unterschied zwischen bind() und singleton() im Service Container?

5

Was macht die Methode app()->make(UserRepository::class)?

+17 Interview-Fragen

Meistere Laravel für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten