Laravel

Laravel Packages

Розробка packages, service providers, facades, ресурси для публікації, конфігурація, міграції, package discovery

20 питань зі співбесід·
Senior
1

Яка основна різниця між методами register() і boot() у Service Provider?

Відповідь

Метод register() використовується для прив'язки сервісів до IoC-контейнера без залежності від інших сервісів, оскільки вони ще недоступні. Метод boot() викликається після реєстрації всіх provider'ів, що дозволяє отримати доступ до всіх зареєстрованих сервісів і налаштувати функції, які від них залежать, як-от маршрути, представлення чи події.

2

Яка рекомендована базова структура для package Laravel?

Відповідь

Добре структурований package Laravel містить каталог src/ для вихідного коду PHP, включно з Service Provider, каталог config/ для файлів конфігурації, composer.json з метаданими та автозавантаженням PSR-4, а також додаткові каталоги для ресурсів, як-от database/, resources/ та routes/. Така організація полегшує підтримку й відповідає конвенціям спільноти.

3

Як працює package discovery в Laravel?

Відповідь

Package discovery використовує секцію extra.laravel у composer.json пакета для автоматичного оголошення provider'ів та aliases. Під час встановлення через Composer Laravel зчитує ці метадані й автоматично реєструє сервіси без ручного редагування config/app.php. Ця функція спрощує встановлення пакетів і зменшує кількість помилок конфігурації.

4

Як зробити файл конфігурації придатним для публікації в package Laravel?

5

Для чого призначений метод mergeConfigFrom() у Service Provider пакета?

+17 питань зі співбесід

Інші теми співбесід Laravel

Опануй Laravel для наступної співбесіди

Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.

Почни безкоштовно