
カスタムバンドル
バンドルの作成、エクステンションの設定、コンパイラパス、再利用可能なバンドル、ベストプラクティス
20 面接問題·
Senior
1Symfony でバンドルのメインクラスはどのクラスを継承する必要がありますか?
1
Symfony でバンドルのメインクラスはどのクラスを継承する必要がありますか?
回答
Symfony のバンドルのメインクラスは AbstractBundle(Symfony 6.1 以降)または Bundle を継承する必要があります。AbstractBundle は設定を簡素化し、configure() メソッドを通じてバンドルクラス内で直接設定を定義できるため推奨されます。Bundle は後方互換性のために引き続き利用できますが、AbstractBundle はより新しい API を提供します。
2Symfony バンドルにおける Extension クラスの役割は何ですか?
2
Symfony バンドルにおける Extension クラスの役割は何ですか?
回答
Extension クラス(ConfigurableExtension または Extension を継承)は、バンドルの設定を読み込み、サービスをコンテナに登録する役割を担います。バンドルの設定ファイルを読み込み、アプリケーションのパラメータを処理し、ContainerBuilder を介してサービスを構成します。コンテナのコンパイル時に呼び出される load() メソッドを実装します。
3AcmePaymentBundle という名前のバンドルのメインクラスの命名規則はどうなっていますか?
3
AcmePaymentBundle という名前のバンドルのメインクラスの命名規則はどうなっていますか?
回答
Symfony の規約では、バンドルのメインクラスはバンドルと同じ名前を持つ必要があります。AcmePaymentBundle の場合、メインクラスは AcmePaymentBundle となり、対応する名前空間(通常は Acme\PaymentBundle)に配置する必要があります。したがって、ファイルはバンドルの src/ フォルダ内の AcmePaymentBundle.php になります。
4
Symfony における Compiler Pass とは何で、いつ使用しますか?
5
パラメータ検証を伴うバンドルのセマンティック設定をどのように定義しますか?
+17 面接問題
その他のSymfony面接トピック
モダンPHP (8.1+)
Junior
20問Symfony の基礎
Junior
25問Routing & Controllers
Junior
20問Twig & Templates
Junior
20問Doctrine ORM の基礎
Junior
25問Symfony フォーム
Junior
22問データバリデーション
Junior
18問Dependency Injection & Services
Mid-Level
24問Security & Authentication
Mid-Level
26問Doctrine 上級
Mid-Level
24問API Platform
Mid-Level
22問Serializer Component
Mid-Level
20問Events & Event Subscribers
Mid-Level
20問Console & Commands
Mid-Level
18問Messenger Component
Mid-Level
22問HTTP Client
Mid-Level
18問キャッシュとパフォーマンス
Mid-Level
20問Workflow Component
Mid-Level
18問Testing Symfony
Mid-Level
22問Mailer Component
Mid-Level
16問翻訳と i18n
Mid-Level
16問EasyAdmin Bundle
Mid-Level
18問Symfony アーキテクチャ
Senior
24問パフォーマンスと最適化
Senior
22問高度なセキュリティ
Senior
22問Symfony によるマイクロサービス
Senior
22問Real-time & WebSockets
Senior
18問Deployment & DevOps
Senior
20問