
Service Container & DI
Dependency injection, service providers, binding, singletons, contextual binding, container-Auflösung, facades
1Was ist der Service Container in Laravel?
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.
2Was ist der Hauptvorteil von Dependency Injection gegenüber der direkten Instanziierung?
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.
3Wie injiziert man eine Abhängigkeit in den Konstruktor eines Laravel-Controllers?
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.
Was ist der Unterschied zwischen bind() und singleton() im Service Container?
Was macht die Methode app()->make(UserRepository::class)?
+17 Interview-Fragen
Weitere Laravel-Interviewthemen
PHP-Grundlagen
PHP OOP-Grundlagen
Composer & Autoloading
Laravel-Grundlagen
Laravel Routing
Blade Templates
Request & Response
Eloquent ORM Grundlagen
Eloquent Relationships
Migrations & Schema Builder
Validierung & Formulare
Authentifizierung
Autorisierung & Policies
API Resources & Authentication
Middleware
Queues & Jobs
Events & Listeners
Benachrichtigungen & Mail
File Storage
Testing & PHPUnit
Caching
Livewire & Inertia
Eloquent Advanced
Repository Pattern
Laravel Packages
Performance Optimization
Security Best Practices
Laravel Octane
Laravel Distributed Systems
Observability & Monitoring
Deployment & DevOps
Meistere Laravel für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten