Laravel

Service Container & DI

Dependency injection, service providers, binding, singletons, contextual binding, risoluzione del container, facades

20 domande da colloquio·
Mid-Level
1

Cos'è il Service Container in Laravel?

Risposta

Il Service Container è uno strumento potente per gestire le dipendenze delle classi ed eseguire la dependency injection. Risolve automaticamente le dipendenze ispezionando i type-hint dei costruttori. Usare il Service Container migliora la testabilità e il disaccoppiamento evitando l'istanziazione diretta delle dipendenze.

2

Qual è il principale vantaggio della dependency injection rispetto all'istanziazione diretta?

Risposta

La dependency injection migliora la testabilità consentendo di sostituire facilmente le dipendenze con mock o stub durante i test. Promuove inoltre il disaccoppiamento, evitando che le classi siano fortemente accoppiate alle loro dipendenze concrete. Questo rende il codice più manutenibile e flessibile ai cambiamenti.

3

Come iniettare una dipendenza nel costruttore di un controller Laravel?

Risposta

Aggiungere un type-hint della dipendenza nel costruttore consente al Service Container di risolvere automaticamente questa dipendenza. Laravel ispeziona i parametri del costruttore e inietta le istanze appropriate senza configurazione aggiuntiva. Questo approccio è il più semplice e comune per la dependency injection nei controller.

4

Qual è la differenza tra bind() e singleton() nel Service Container?

5

Cosa fa il metodo app()->make(UserRepository::class)?

+17 domande da colloquio

Padroneggia Laravel per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis