Symfony

Custom Bundle

Pembuatan bundle, konfigurasi extension, compiler pass, bundle yang dapat digunakan kembali, praktik terbaik

20 pertanyaan wawancara·
Senior
1

Class apa yang harus di-extend oleh class utama bundle di Symfony?

Jawaban

Class utama bundle Symfony harus meng-extend AbstractBundle (Symfony 6.1+) atau Bundle. AbstractBundle direkomendasikan karena menyederhanakan konfigurasi dan memungkinkan pendefinisian konfigurasi langsung di class bundle melalui method configure(). Bundle tetap tersedia untuk kompatibilitas mundur, tetapi AbstractBundle menawarkan API yang lebih modern.

2

Apa peran class Extension dalam bundle Symfony?

Jawaban

Class Extension (yang meng-extend ConfigurableExtension atau Extension) bertanggung jawab memuat konfigurasi bundle dan mendaftarkan service ke dalam container. Class ini membaca file konfigurasi bundle, memproses parameter aplikasi, dan mengonfigurasi service melalui ContainerBuilder. Class ini mengimplementasikan method load() yang dipanggil saat kompilasi container.

3

Apa konvensi penamaan untuk class utama bundle bernama AcmePaymentBundle?

Jawaban

Berdasarkan konvensi Symfony, class utama bundle harus memiliki nama yang sama dengan bundle-nya. Untuk AcmePaymentBundle, class utamanya adalah AcmePaymentBundle dan harus berada di namespace yang sesuai, biasanya Acme\PaymentBundle. Jadi, file-nya adalah AcmePaymentBundle.php di folder src/ bundle.

4

Apa itu Compiler Pass di Symfony dan kapan harus digunakan?

5

Bagaimana cara mendefinisikan konfigurasi semantik untuk bundle dengan validasi parameter?

+17 pertanyaan wawancara

Kuasai Symfony untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis