
Niestandardowe bundle
Tworzenie bundli, konfiguracja extension, compiler passes, bundle wielokrotnego użytku, najlepsze praktyki
1Którą klasę musi rozszerzać główna klasa bundle'a w Symfony?
Którą klasę musi rozszerzać główna klasa bundle'a w Symfony?
Odpowiedź
Główna klasa bundle'a Symfony musi rozszerzać AbstractBundle (Symfony 6.1+) lub Bundle. AbstractBundle jest zalecana, ponieważ upraszcza konfigurację i pozwala definiować ją bezpośrednio w klasie bundle'a za pomocą metody configure(). Bundle pozostaje dostępna ze względu na kompatybilność wsteczną, ale AbstractBundle oferuje nowocześniejsze API.
2Jaka jest rola klasy Extension w bundle'u Symfony?
Jaka jest rola klasy Extension w bundle'u Symfony?
Odpowiedź
Klasa Extension (rozszerzająca ConfigurableExtension lub Extension) odpowiada za ładowanie konfiguracji bundle'a i rejestrowanie usług w kontenerze. Odczytuje pliki konfiguracyjne bundle'a, przetwarza parametry aplikacji i konfiguruje usługi za pomocą ContainerBuilder. Implementuje metodę load(), która jest wywoływana podczas kompilacji kontenera.
3Jaka jest konwencja nazewnictwa głównej klasy bundle'a o nazwie AcmePaymentBundle?
Jaka jest konwencja nazewnictwa głównej klasy bundle'a o nazwie AcmePaymentBundle?
Odpowiedź
Zgodnie z konwencją Symfony główna klasa bundle'a musi mieć tę samą nazwę co bundle. Dla AcmePaymentBundle główną klasą będzie AcmePaymentBundle i musi znajdować się w odpowiedniej przestrzeni nazw, zwykle Acme\PaymentBundle. Plik to zatem AcmePaymentBundle.php w folderze src/ bundle'a.
Czym jest Compiler Pass w Symfony i kiedy go używać?
Jak zdefiniować konfigurację semantyczną dla bundle'a z walidacją parametrów?
+17 pytań z rozmów
Inne tematy rekrutacyjne Symfony
Nowoczesny PHP (8.1+)
Podstawy Symfony
Routing & Controllers
Twig & Templates
Podstawy Doctrine ORM
Formularze Symfony
Walidacja danych
Dependency Injection & Services
Security & Authentication
Zaawansowany Doctrine
API Platform
Serializer Component
Events & Event Subscribers
Console & Commands
Messenger Component
HTTP Client
Cache i wydajność
Workflow Component
Testing Symfony
Mailer Component
Tłumaczenia i i18n
EasyAdmin Bundle
Architektura Symfony
Wydajność i optymalizacja
Zaawansowane bezpieczeństwo
Microservices z Symfony
Real-time & WebSockets
Deployment & DevOps
Opanuj Symfony na następną rozmowę
Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.
Zacznij za darmo