==== サービスコンテナのコンテキストバインディングを活用し、同じインターフェイスに対して呼び出し元クラスごとに異なる実装を注入する。例えば: ```php // App\Providers\AppServiceProvider.php の register() 内 $this->app->when(\App\Services\OrderService::class) ->needs(\App\Contracts\PaymentGatewayInterface::class) ->give(\App\Gateways\StripeGateway::class); $this->app->when(\App\Services\ReportService::class) ->needs(\App\Contracts\PaymentGatewayInterface::class) ->give(\App\Gateways\PaypalGateway::class); ``` こうすることで、同一インターフェイスでも用途に応じた実装差替えが容易になり、テストや拡張性が格段に向上します。